Alex Rønne Petersen
530edea1ca
test: Rewrite the target triple list for llvm_targets.
...
This removes some triples that didn't really make sense (e.g. msp430-linux) and
adds more exhaustive coverage of supported triples.
2024-10-03 05:01:24 +02:00
Alex Rønne Petersen
3f322c49bc
std.Target: Remove Os.Tag.shadermodel.
...
This was a leftover from the Cpu.Arch.dxil removal.
2024-10-03 05:01:24 +02:00
Alex Rønne Petersen
c2ba6127c0
std.Target: Fix getVersionRangeTag() for bridgeos.
...
Until we actually figure out a version range for this, we shouldn't classify
this as using semver. Doing so results in a panic when trying to access the
version range since it's not in fact a semver value.
2024-10-03 05:01:24 +02:00
Alex Rønne Petersen
7d71e794dd
std.Target: Fix Cpu.Model.generic() for arc, csky, and xtensa.
...
Only targets for which we don't source CPU models/features from LLVM should use
the fallback prong in this switch. Also make it exhaustive to catch similar
mistakes in the future.
2024-10-03 05:01:24 +02:00
Alex Rønne Petersen
cb1ac0bb2f
update_cpu_features: Don't delete the output file if there are no CPU features.
...
At bare minimum, the compiler expects std.Target.<arch>.cpu.generic to work for
any given architecture when generating the builtin module. So rather than try to
hack that into working when the affected modules are omitted, just actually keep
them.
This affected lanai and xcore.
2024-10-03 05:01:14 +02:00
Michael Ortmann
3b465ebec5
std.start: dont query stack limit for wanted stack size 0 ( #21533 )
2024-09-28 23:06:28 -07:00
Andrew Kelley
0cdec976e4
Merge pull request #21520 from ziglang/no-formatted-panics
...
formalize the panic interface
closes #17969
closes #20240
2024-09-28 15:58:41 -07:00
Andrew Kelley
2857ca1edc
revert safety test cases to rely on deprecated old API
...
in case someone wants to pursue the idea of making the panic interface a
struct, this will reduce churn.
2024-09-28 12:16:41 -07:00
Jakub Konka
777e722b06
macho: increase pre-allocated vmsize for __TEXT_ZIG segment
2024-09-28 11:59:51 -07:00
Andrew Kelley
737b581681
disable plan9 test
...
This experimental target has no recent active maintainer. It's the only
linker backend complaining about this branch and I can't make sense of
the stack trace.
This can be fixed asynchronously by anyone who wants to maintain plan9
support. It does not need to block this branch.
2024-09-26 21:02:14 -07:00
Andrew Kelley
2e14cbe9cd
Sema: better utility function semantics
...
better names, return error instead of panicking, better diagnostics, use
the standard APIs for resolving values
2024-09-26 20:53:26 -07:00
Andrew Kelley
5b1a9fbb45
update crash report to the new panic interface
2024-09-26 20:25:09 -07:00
Andrew Kelley
37d1da5bed
I think it's better to put the imports at the top
2024-09-26 20:24:46 -07:00
Andrew Kelley
7f4c0e010d
update safety test cases to new panic API
...
although they would also pass simply reverted to master branch because
I made the deprecated API still work for now (to be removed after 0.14.0
is tagged)
2024-09-26 17:14:17 -07:00
Andrew Kelley
db8c074476
fix still calling std.builtin.panic sometimes
2024-09-26 16:46:02 -07:00
Andrew Kelley
1b491e640d
fixes and make sema report errors when std.builtin wrong
...
instead of panicking
2024-09-26 16:06:05 -07:00
Andrew Kelley
c9c080a187
embrace panic helpers
...
Introduces `std.builtin.Panic` which is a complete interface for
panicking. Provide `std.debug.FormattedPanic` and
`std.debug.SimplePanic` and let the user choose, or make their own.
2024-09-26 16:06:05 -07:00
Andrew Kelley
fcfbedc2f0
work around riscv64 backend deficiencies
2024-09-26 16:06:05 -07:00
Andrew Kelley
231783f207
update test cases to new panic API
2024-09-26 12:35:14 -07:00
Andrew Kelley
e8887829ca
compile error instead of crash when root panic fn wrong
2024-09-26 12:35:14 -07:00
Andrew Kelley
61b20105e4
fix crash report not using mutexes correctly
2024-09-26 12:35:14 -07:00
Andrew Kelley
70746d580c
better codegen for @panic
with comptime-known operand
2024-09-26 12:35:14 -07:00
Andrew Kelley
b66cc5af41
reimplement integer overflow safety panic function calls
...
in the llvm backend.
2024-09-26 12:35:14 -07:00
Andrew Kelley
f2c8940aa6
reintroduce the std.builtin safety panic helpers
...
motivated by performance
2024-09-26 12:35:14 -07:00
Andrew Kelley
76f0b6e7d8
delete the old panic stuff again
...
now that we have a zig1.wasm update it's not needed
2024-09-26 12:35:14 -07:00
Andrew Kelley
9ccf8d3332
fixes for this branch
...
I had to bring back some of the old API so that I could compile the new
compiler with an old compiler.
2024-09-26 12:35:14 -07:00
Andrew Kelley
4f8d244e7e
remove formatted panics
...
implements #17969
2024-09-26 12:35:14 -07:00
Andrew Kelley
04e694ad11
move std.time.sleep to std.Thread.sleep
2024-09-26 12:35:14 -07:00
dave caruso
085cc54aad
replace TranslateC.addIncludeDir with variants with LazyPath/library names
2024-09-25 21:50:55 -07:00
Andrew Kelley
0e876a6378
Merge pull request #21514 from ziglang/elf-incr
...
elf: get incremental tests passing via `incr-check` tool
2024-09-25 19:41:13 -07:00
Andrew Kelley
4442288656
std: fix inappropriate use of unreachable in fanotify_init
2024-09-25 16:07:04 -07:00
mlugg
054dbb6798
incr-check: specify backend in manifest, allow multiple targets/backends
2024-09-25 20:39:31 +01:00
Jakub Konka
1714b74edf
incr-check: actually handle end message for a compiler update
2024-09-25 17:54:50 +02:00
Jakub Konka
1c2048ebcc
incr-check: add --debug-link flag for verbose linker logging
2024-09-25 17:54:50 +02:00
Jakub Konka
50074a835a
elf: remove unused code
2024-09-25 17:54:50 +02:00
Jakub Konka
10c68d05db
elf: change how we create new program headers
...
We do not want to create additional ones per update that are duplicates
of existing ones.
2024-09-25 17:54:50 +02:00
Jakub Konka
992c6c3f68
elf: reset output symtab contexts before re-updating
2024-09-25 17:54:50 +02:00
Jakub Konka
82cf762b02
elf: reset (merge) sections sizes before updating
2024-09-25 17:54:50 +02:00
Jakub Konka
db3db1150e
elf: do not re-create special program headers if already created
2024-09-25 17:54:50 +02:00
Jakub Konka
62c282ba46
elf: do not re-create synthetic sections if already created
2024-09-25 17:54:50 +02:00
Maciej 'vesim' Kuliński
4ceefca14b
mips: use byval for all integer types
2024-09-25 07:37:03 -07:00
Andrew Kelley
efc98fcbeb
disallow non-scalar sentinel types
...
see #17969
2024-09-25 03:02:05 -07:00
Alex Rønne Petersen
a40cdad18c
tsan: Update to LLVM 19.1.0.
2024-09-24 23:58:21 -07:00
matt
7f6b7c5608
fix THREAD_STATE_NONE on darwin
...
#21094
2024-09-24 22:41:00 -07:00
Krzysztof Wolicki
4d09fb491f
fetch: fix mutating unrelated fields when saving ( #19816 )
...
closes #19725
2024-09-24 13:38:13 -07:00
Meghan Denny
5e4da1ff30
std: add arch bits for s390x-linux ( #21342 )
...
see #21402
2024-09-24 13:35:12 -07:00
Nameless
8d76c02f9a
uefi: erroneous alignment check in pool_allocator
...
Fixes #21446
Both UefiPoolAllocator and UefiRawPoolAllocator were
passing the value of `log2_ptr_align` directly to
`mem.alignAllocLen` which expects a alignment value.
Both of these calls to `mem.alignAllocLen` are pointless
and the result of the alignment both always true, and
was thrown away anyway.
I have removed these calls entirely.
2024-09-24 13:30:53 -07:00
WillLillis
37cd21eb5f
fix: disallow discard as errdefer capture
2024-09-24 13:21:06 -07:00
Alex Kladov
ffd071f558
fix IB in fifoToOwnedArrayList
...
memcpy requires non-overlapping arguments.
fifo.realign() handles this case correctly and tries to provide an
optimized implementation.
This probably wasn't hit in practice, as, in a typical usage, fifo's
head is not advanced.
2024-09-24 13:19:06 -07:00
Frank Denis
c062c532d7
Add post-quantum key agreement X25519MLKEM768
...
X25519MLKEM768 replaces X25519Kyber768Draft00 now that NIST has
released ML-KEM.
IANA has assigned the codepoint 0x11ec:
https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#tls-parameters-8
2024-09-24 13:18:32 -07:00