Jacob Young
77d06012c2
CBE: implement unsigned big int div and mod
2023-03-07 03:03:35 -05:00
Jacob Young
c1d16a2b80
compiler_rt: fix rare case in udivei4
...
Unsigned integers are never less than zero, and so zig
helpfully deleted the entire case. :D
Closes #14816
2023-03-07 03:00:08 -05:00
Andrew Kelley
2641feb9b9
Merge pull request #14789 from jacobly0/ditype
...
llvm: fix use after free with pointers to optional slices
2023-03-05 16:32:51 -05:00
r00ster91
f1ae688d37
AstGen: ensure certain builtin functions return void
...
Fixes #14779
Co-authored-by: Veikka Tuominen <git@vexu.eu>
2023-03-05 23:01:17 +02:00
Jacob Young
8ea1c1932e
behavior: disable failing tests
2023-03-05 04:25:04 -05:00
Jacob Young
7352d461cf
behavior: fix comptime issue and disable failing test
2023-03-05 03:34:57 -05:00
Jacob Young
33fa25ba44
CBE: ensure uniqueness of more internal identifiers
2023-03-05 02:59:02 -05:00
Jacob Young
0b0298aff2
CBE: implement select and shuffle
2023-03-05 02:59:02 -05:00
Jacob Young
aac4707902
CBE: implement splat
2023-03-05 02:59:02 -05:00
Jacob Young
ba69ee488b
CBE: implement vector truncate
2023-03-05 02:59:02 -05:00
Jacob Young
8f6da78fb1
CBE: implement vector element pointers
2023-03-05 02:59:02 -05:00
Jacob Young
c478c7609e
CBE: implement vector operations
...
Also, bigint add and sub which is all I was actually trying to do.
2023-03-05 02:59:02 -05:00
Jacob Young
93d696e84e
CBE: implement some big integer and vector unary operations
2023-03-05 02:59:01 -05: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
Andrew Kelley
16302578d5
add behavior test case for previous commit
2023-03-04 14:04:58 -07:00
Jakub Konka
18e6d1e819
Merge pull request #14781 from ziglang/codegen-cleanup
...
codegen: move common logic for generating typed values from each native backend into codegen.zig
2023-03-04 03:38:12 +01:00
r00ster91
e0d3904638
Ast: properly handle sentinel-terminated slices in tuple
...
Co-authored-by: Veikka Tuominen <git@vexu.eu>
2023-03-04 01:08:03 +02:00
Jakub Konka
d8d8842190
arm: skip unimplemented behavior test for @fieldParentPtr
2023-03-03 18:42:29 +01:00
Jacob Young
1453a595aa
CBE: reuse locals with the same CType instead of Type
...
Many `Type`s can correspond to the same `CType`, so this reduces the
number of used locals by 27760 when compiling only-c.
Also, disabled some tests that were only passing by accident and
shouldn't really be considered working.
2023-02-24 23:41:54 -05:00
Jacob Young
f8aecef670
CBE: implement the future
...
Turns out f(...) will be supported one day.
2023-02-23 21:25:29 -05:00
Jacob Young
57f6adf85d
CBE: implement c varargs
...
Removed some backend test skip checks for things disabled in std.
2023-02-23 01:21:59 -05:00
Jacob Young
597e8011f7
CType: fix lowering of generic function pointer
2023-02-23 00:29:23 -05:00
Jacob Young
bdb1e014a0
CBE: cleanup field access
...
* Implement @fieldParentPtr on a union
* Refactor field access to ensure that it is handled consistently
* Remove `renderTypecast` as it is now behaves the same as `renderType`
2023-02-23 00:29:23 -05:00
Andrew Kelley
c9e02d3e69
Merge pull request #14691 from jacobly0/ctype
2023-02-22 11:06:13 -05:00
Jacob Young
248fb40dcc
CBE: fix windows test failures
2023-02-21 15:46:34 -05:00
Jacob Young
434c6f42ca
behavior: enable passing CBE tests
2023-02-21 09:43:23 -05:00
Isaac Freund
05da5b32a8
Sema: implement @fieldParentPtr for unions
2023-02-21 15:57:13 +02:00
Jakub Konka
dc1f50e505
Merge pull request #14685 from ziglang/bitcast-fixes
...
Bitcast fixes for self-hosted native backends
2023-02-20 23:01:21 +01:00
Jakub Konka
528c43233f
arm: alloc new mcv in bitcast if cannot reuse operand
2023-02-20 12:13:14 +01:00
Jakub Konka
a7de8dc2dd
x86: alloc new mcv in bitcast if cannot reuse operand
...
Implement missing pointees when ptr is in register.
2023-02-20 10:52:26 +01:00
Andrew Kelley
ec4cd87ed7
add test coverage for fixed bug. closes #5518
2023-02-19 21:18:27 -07:00
Andrew Kelley
e778e47140
add test coverage for fixed bug. closes #5516
2023-02-19 21:18:27 -07:00
Andrew Kelley
680d79ebf9
add test coverage for fixed bug. closes #5508
2023-02-19 21:18:27 -07:00
Andrew Kelley
ffdce5f98c
add test coverage for fixed bug. closes #5497
2023-02-19 21:18:27 -07:00
Andrew Kelley
40c4c25e2b
Sema: add missing coercion when checking for loop len
2023-02-18 19:20:19 -07:00
Andrew Kelley
8b05205bb7
implement error for unbounded for loops
2023-02-18 19:20:19 -07:00
Andrew Kelley
74db8c2e83
omit safety checks for element access in for loops
...
One of the main points of for loops is that you can safety check the
length once, before entering the loop, and then safely assume that every
element inside the loop is in bounds.
In master branch, the safety checks are incorrectly intact even inside
for loops. This commit fixes it. It's especially nice with multi-object
loops because the number of elided checks is N * M where N is how many
iterations and M is how many objects.
2023-02-18 19:20:19 -07:00
Andrew Kelley
bcb72401d3
AstGen: add error for discard of unbounded counter
2023-02-18 19:17:21 -07:00
Andrew Kelley
b13745ac03
disable failing x86_64 backend tests
2023-02-18 19:17:21 -07:00
Andrew Kelley
b6a5e52dec
add passing for loop test: two counters
2023-02-18 19:17:21 -07:00
Andrew Kelley
f2a6a1756b
Sema: fix for loops with comptime-known int ranges
2023-02-18 19:17:21 -07:00
Andrew Kelley
f0530385b5
update existing behavior tests and std lib to new for loop semantics
2023-02-18 19:17:21 -07:00
Matt Knight
07630eb696
Value: implement writeToMemory for packed unions
2023-02-18 21:10:27 +02:00
Veikka Tuominen
7199d7c777
split @qualCast into @constCast and @volatileCast
2023-02-15 01:43:57 +02:00
Veikka Tuominen
31ed8d293d
Sema: add missing peer type resolution for error unions
...
Closes #14077
2023-02-11 14:36:54 +02:00
Ryan Liptak
9db084f43d
Add test for optional error set return types
...
Closes #5820
2023-02-03 14:48:08 +02:00
Andrew Kelley
6b7ad22981
Merge pull request #14477 from Vexu/fixes
...
Improve `@ptrCast` errors, fix some bugs
2023-02-01 23:31:52 -05:00
Veikka Tuominen
629c3108aa
AstGen: fix orelse type coercion in call arguments
...
Closes #14506
2023-02-02 00:31:35 +02:00
Techatrix
47ff57ed7d
wasm: apply request change
2023-01-31 17:01:56 +01:00