Jacob Young
6c14eb2863
x86_64: optimize mir tag usage
...
This moves all pseudo-instructions to a single `Mir.Inst.Tag` tag and
prepares to start coalescing similar mnemonics. 239 tags left in use.
2023-05-08 07:36:20 -04:00
Jacob Young
6778da4516
x86_64: implement binary operations for f16 and f16 vectors
2023-05-08 07:36:20 -04:00
Jacob Young
f8708e2c4d
x86_64: implement @floor, @ceil, and @trunc for float vectors
2023-05-08 07:36:20 -04:00
Jacob Young
057139fda5
x86_64: implement binary operations for float vectors
2023-05-08 07:36:20 -04:00
Jacob Young
ea957c4cff
x86_64: implement @sqrt for f16 scalars and vectors
2023-05-08 07:36:20 -04:00
Jacob Young
5c5da179fb
x86_64: implement @sqrt for vectors
2023-05-08 07:36:20 -04:00
Jacob Young
05580b9453
x86_64: implement float cast from f16 to f64
2023-05-08 07:36:20 -04:00
Jacob Young
1c53f0a6b0
Dwarf: workaround crash
2023-05-08 07:36:20 -04:00
Jacob Young
406c403543
x86_64: add missing movsx and movzx encodings
2023-05-08 07:36:20 -04:00
Jacob Young
cba195c117
x86_64: implement some float and float vector movement
...
This allows actually storing value of these supported types in
registers, and not restricting them to stack slots.
2023-05-08 07:36:20 -04:00
Jacob Young
3a5e3c52e0
x86_64: implement @mulAdd
2023-05-08 07:36:20 -04:00
Jacob Young
0bd92da0e2
target: fix typos in x86 feature descriptions
2023-05-08 07:36:20 -04:00
Jacob Young
4b75352c78
x86_64: implement packed floating point fields
2023-05-08 07:36:20 -04:00
Jacob Young
5d4288c5f6
x86_64: fix unordered float equality
2023-05-08 07:36:19 -04:00
Jacob Young
ae588a09f2
x86_64: implement f16 cmp
2023-05-08 07:36:19 -04:00
Jacob Young
32ab930f1d
x86_64: implement f16 conversions when supported
2023-05-08 07:36:19 -04:00
Jacob Young
1a261917ce
x86_64: implement @ctz and @clz for u128
2023-05-08 07:36:19 -04:00
Jacob Young
9bea854dc2
x86_64: implement @floor, @ceil, and @trunc
2023-05-08 07:36:19 -04:00
Jayden
b18b4db709
parse_float: Error when a float is attempted to be parsed into an invalid type
...
Co-authored-by: Ryan Liptak <squeek502@hotmail.com>
2023-05-08 10:42:24 +00:00
Dominic
5a3eca5d4c
Disallow named test decls with duplicate names
2023-05-08 10:59:06 +03:00
Jacob Young
bac3a28214
fmt: avoid canonicalizing enum fields named @"_" to _
...
This can be used to escape the usual meaning of `_` to indicate a
non-exhaustive enum and create an enum tag that is a literal underscore,
so zig fmt should allow this syntax.
Before, zig fmt changes
const E = enum { @"_" };
to the semantically different
const E = enum { _ };
After, it remains the same.
2023-05-08 10:58:31 +03:00
David CARLIER
ff59c45840
std.c: darwin add host_info based data.
2023-05-07 17:05:03 +03:00
Loris Cro
e8cc1017da
Merge pull request #15594 from der-teufel-programming/autodoc-tldocs
...
Autodoc: Add gathering of top-level doc comments for imported files
2023-05-07 13:58:53 +02:00
Dominic
e1f5ad3cc8
Fix parsing of hexadecimal literals
2023-05-07 08:05:53 +00:00
Jakub Konka
49c1384bac
elf: fix typo in def of SHT_LLVM_ADDRSIG
2023-05-07 09:09:19 +02:00
Jakub Konka
66ff7d9161
elf: add more missing defs for SHT_* and SHF_*
2023-05-07 09:05:18 +02:00
dweiller
4d296debef
test: disable by-length slice test on wasm backend
2023-05-07 15:55:21 +10:00
dweiller
e507f0c0aa
test: add behavior tests for pointer slice-by-length
2023-05-07 15:55:21 +10:00
dweiller
cba9077cc1
sema: fix slice by length non-array, non-slice case
2023-05-07 15:55:21 +10:00
dweiller
bd3360e03d
convert s[start..start+len] to s[start..][0..len]
2023-05-07 15:55:21 +10:00
dweiller
2c5924c59a
autodoc: fix support for slice_length ZIR instruction
2023-05-07 15:55:21 +10:00
dweiller
5bb8e9cd97
langref: mention slice-by-length pattern
2023-05-07 15:55:21 +10:00
dweiller
64e319f555
add optional sentinel to slice_length ZIR
2023-05-07 15:55:21 +10:00
dweiller
7c8d60e814
test: add behavior tests for slice-by-length
2023-05-07 15:55:20 +10:00
dweiller
2c2a0402c6
autodoc: implement slice_length case in walkInstruction
2023-05-07 15:55:20 +10:00
dweiller
8aa70cf6cd
sema: omit extraneous addition when safety is unwanted
2023-05-07 15:55:20 +10:00
dweiller
9fb5b047e9
astgen: lower s[start..][0..len] to slice_length ZIR
2023-05-07 15:55:20 +10:00
dweiller
e58a0c5e9e
sema: implement slice_length ZIR instruction
2023-05-07 15:55:20 +10:00
dweiller
a62b5d84d8
zir: add slice_length tag
2023-05-07 15:55:20 +10:00
Nameless
9017d758b9
std.http: use larger read buffer to hit faster tls code
2023-05-06 21:35:17 -05:00
Nameless
1b3ebfefd8
fix keepalive and large buffered writes
2023-05-06 21:35:16 -05:00
Nameless
5f219a2d11
std.http.Server: give Response access to their own allocator
...
* This makes it easier for threaded servers to use a different allocator
for each request.
2023-05-06 21:35:16 -05:00
Nameless
7b09629388
std.http: buffer writes
2023-05-06 21:35:16 -05:00
Nameless
533049fdd8
std.http.Server: use enum for reset state instead of bool
2023-05-06 21:35:15 -05:00
Nameless
6513eb4696
std.http.Server: use client recommendation for keepalive
2023-05-06 21:35:15 -05:00
Nameless
71c228fe65
std.http: add simple standalone http tests, add state check for http server
2023-05-06 21:35:15 -05:00
Jacob Young
d71a43ec2c
cbe: fix typos
2023-05-06 10:27:39 -07:00
r00ster91
9dde710ea1
Sema: fix @extern empty lib name error message
2023-05-06 09:32:34 +02:00
r00ster91
3485a0e7fb
Sema: fix and improve errors for for loop objects and non-indexables
...
Operands to @memcpy and @memset were being called "for loop operands" in
the error.
2023-05-06 09:32:34 +02:00
r00ster91
743976ef48
Sema: add some missing apostrophes to error messages
2023-05-06 09:32:34 +02:00