Jakub Konka
52066bf8e4
x86_64+macho: pass more behavior tests
2024-02-06 19:01:17 +01:00
dweiller
8108c9f4d2
test/behavior: replace all 'comptime expect' with 'comptime assert'
2024-01-15 20:55:01 +11:00
Jacob Young
014833b61f
x86_64: implement more compliant vectors
2023-12-03 10:22:06 -05:00
Jacob Young
bf5ab54510
test: test with -fstrip and fix failures
...
Closes #17513
2023-12-01 04:34:50 +00:00
mlugg
9c16b2370d
test: update behavior to silence 'var is never mutated' errors
2023-11-19 09:57:03 +00:00
Andrew Kelley
3fc6fc6812
std.builtin.Endian: make the tags lower case
...
Let's take this breaking change opportunity to fix the style of this
enum.
2023-10-31 21:37:35 -04:00
Jacob Young
27fe945a00
Revert "Revert "Merge pull request #17637 from jacobly0/x86_64-test-std""
...
This reverts commit 6f0198cadbe29294f2bf3153a27beebd64377566.
2023-10-22 15:46:43 -04:00
Andrew Kelley
6f0198cadb
Revert "Merge pull request #17637 from jacobly0/x86_64-test-std"
...
This reverts commit 0c99ba1eab63865592bb084feb271cd4e4b0357e, reversing
changes made to 5f92b070bf284f1493b1b5d433dd3adde2f46727.
This caused a CI failure when it landed in master branch due to a
128-bit `@byteSwap` in std.mem.
2023-10-22 12:16:35 -07:00
Jacob Young
2e6e39a700
x86_64: fix bugs and disable erroring tests
2023-10-21 10:55:41 -04:00
Robin Voetter
faad97edff
spirv: update failing / passing tests
...
Some tests are now failing due to debug info changes, some tests
now pass due to improved compiler functionality.
2023-10-15 20:08:18 +02:00
Jacob Young
54b2d6f072
x86_64: implement C abi for everything else
2023-10-05 04:38:25 -04:00
Jacob Young
cc6694a323
x86_64: implement C abi for f128
2023-10-05 04:10:38 -04:00
Jacob Young
8470652f10
x86_64: implement float compare and cast builtins
2023-10-01 15:09:52 -04:00
Robin Voetter
79f7481575
spirv: disable failing tests
2023-09-23 12:36:44 -07:00
Techatrix
ab970094ab
wasm: enable successful behavior tests
2023-09-10 15:59:02 +02:00
mlugg
283afb50b5
AstGen: disallow '-0' integer literal
...
The intent here is ambiguous: this resolves to the comptime_int '0', but
it's likely the user meant to use a floating-point literal.
Resolves : #16890
2023-08-21 11:47:31 +03:00
Lewis Gaul
387b0ac4f1
Make NaNs quiet by default and other NaN tidy-up ( #16826 )
...
* Generalise NaN handling and make std.math.nan() give quiet NaNs
* Address uses of std.math.qnan_* and std.math.nan_* consts
* Comment out failing test due to issues with signalling NaN
* Fix issue in c_builtins.zig where we need qnan_u32
2023-08-18 02:07:49 -04:00
Jacob Young
228c956377
std: finish cleanup up asm
...
This also required implementing the necessary syntax in the x86_64 backend.
2023-07-31 03:49:21 -04:00
antlilja
a0ec2266fe
Update tests to new splat syntax
2023-07-12 15:35:57 -07:00
r00ster91
2583a39fb6
behavior: test @bitCast of packed struct of bools
...
This seems to have resolved itself now.
Tested on x86_64 using debug optimize mode.
Closes #9851
2023-07-03 10:59:13 -07:00
mlugg
f26dda2117
all: migrate code to new cast builtin syntax
...
Most of this migration was performed automatically with `zig fmt`. There
were a few exceptions which I had to manually fix:
* `@alignCast` and `@addrSpaceCast` cannot be automatically rewritten
* `@truncate`'s fixup is incorrect for vectors
* Test cases are not formatted, and their error locations change
2023-06-24 16:56:39 -07:00
Eric Joldasov
d884d7050e
all: replace comptime try with try comptime
...
Signed-off-by: Eric Joldasov <bratishkaerik@getgoogleoff.me>
2023-06-13 23:46:58 +06:00
Robin Voetter
37aa343079
spirv: more passing tests
2023-05-20 17:30:22 +02:00
Jacob Young
729daed591
x86_64: rewrite casts
2023-05-18 20:42:38 -04:00
Ali Chraghi
ccc490ef68
setup spirv backend in behavior tests
2023-05-11 20:31:52 +02:00
Jacob Young
83a208c355
x86_64: implement large cmp
2023-04-02 04:49:53 -04:00
Jacob Young
8f385e77ca
x86_64: implement struct_field_val for packed containers
2023-03-25 16:23:55 -04:00
Jacob Young
a8f4ac2b94
CBE: implement big integer and vector comparisons
2023-03-05 02:59:01 -05:00
Jacob Young
874ae81f1b
CBE: implement big integer literals
2023-03-05 02:59:01 -05:00
Hardy
37fe41792c
added test for bitcast signaled nan float
...
This was fixed by MR #14201
closes #10449
2023-01-20 16:42:24 +02:00
Andrew Kelley
ba1e53f116
avoid triggering LLVM bug on MIPS
...
See #13782
2023-01-05 00:03:59 -07:00
joachimschmidt557
d6e6162081
stage2 AArch64: unify callee-preserved regs on all targets
...
also enables many passing behavior tests
2022-12-27 21:17:52 +08:00
Jacob Young
fc0789f8e7
behavior: disable tests that trigger an llvm 15 bug and assertion
...
```
LLVM Emit Object... zig: llvm/include/llvm/ADT/APInt.h:840: void llvm::APInt::lshrInPlace(unsigned int): Assertion `ShiftAmt <= BitWidth && "Invalid shift amount"' failed.
Aborted
```
Tracked by #13782
2022-12-24 02:23:05 -05:00
Veikka Tuominen
2926d95e6a
llvm: handle vectors in packed structs
...
Closes #13201
2022-12-19 12:19:52 +02:00
r00ster91
aac2d6b56f
std.builtin: rename Type.UnionField and Type.StructField's field_type to type
2022-12-17 14:11:33 +01:00
Koakuma
f9e9ba784f
stage2: sparc64: Skip unimplemented tests
2022-12-10 21:51:46 +07:00
Andrew Kelley
c8aba15c22
remove references to stage1 in behavior tests
...
Good riddance.
2022-12-06 19:06:48 -07:00
Luuk de Gram
090deae41d
wasm: enable behavior tests for packed structs
2022-11-30 21:01:09 +01:00
Stevie Hryciw
04f3067a79
run zig fmt on everything checked by CI
2022-11-18 19:22:42 +00:00
Jacob Young
48a2783969
cbe: implement optional slice representation change
2022-10-29 05:58:41 -04:00
Cody Tapscott
40b7792a4c
Enable bitcast test now that #13214 is resolved.
2022-10-28 12:41:15 -07:00
Cody Tapscott
3295fee911
stage2: Use mem.readPackedInt etc. for packed bitcasts
...
Packed memory has a well-defined layout that doesn't require
conversion from an integer to read from. Let's use it :-)
This change means that for bitcasting to/from a packed value that
is N layers deep, we no longer have to create N temporary big-ints
and perform N copies.
Other miscellaneous improvements:
- Adds support for casting to packed enums and vectors
- Fixes bitcasting to/from vectors outside of a packed struct
- Adds a fast path for bitcasting <= u/i64
- Fixes bug when bitcasting f80 which would clear following fields
This also changes the bitcast memory layout of exotic integers on
big-endian systems to match what's empirically observed on our targets.
Technically, this layout is not guaranteed by LLVM so we should probably
ban bitcasts that reveal these padding bits, but for now this is an
improvement.
2022-10-28 08:41:04 -07:00
Jacob Young
ab468d57e3
cbe: implement packed structs
...
Sometimes you have to break a test to make progress :)
2022-10-25 05:11:29 -04:00
Jacob Young
525dcaecba
behavior: enable stage2_c tests that are currently passing
...
Also fix C warnings triggered by these tests.
2022-10-25 05:11:28 -04:00
GethDW
edc842ff18
stage2: implement packedStuctToInt for more types
2022-10-18 14:05:48 +03:00
joachimschmidt557
3794f2c493
stage2 ARM: implement struct_field_val for registers
2022-09-09 19:17:18 +02:00
Veikka Tuominen
57f9405a8f
Sema: validate bitcast operand type
2022-08-01 23:37:01 +03:00
Omar Alhammadi
69e2cac0d3
stage2: comptime @bitCast packed struct bug fix
2022-06-17 19:04:51 +03:00
joachimschmidt557
ddd5b57045
stage2 AArch64: complete genTypedValue
2022-05-27 16:43:11 -04:00
Andrew Kelley
71e2a56e3e
mark some more behavior tests as passing
2022-05-25 00:12:56 -07:00