Josh Wolfe
8bec737ca2
fix tests actually checking string contents
2024-08-07 06:29:34 -04:00
Jakub Konka
b058545970
elf: remove stale code
2024-08-07 10:21:03 +02:00
Jakub Konka
90c4037819
elf: fix off-by-one direct access to symbol resolver in ZigObject
2024-08-07 10:21:03 +02:00
Jakub Konka
128289fda1
elf: actually init symbol resolvers array in ZigObject
2024-08-07 10:21:03 +02:00
Jakub Konka
668fd7aca6
elf: handle SHN_UNDEF explicitly in ZigObject.resolveSymbols
2024-08-07 10:21:03 +02:00
Jakub Konka
02f38d7749
codegen: fix Elf symbol refs
2024-08-07 10:21:03 +02:00
Jakub Konka
89db24ec6d
elf: fix .eh_frame calc in relocatable mode
2024-08-07 10:21:03 +02:00
Jakub Konka
e99818c602
elf: start-stop resolution has to come after init output sections
2024-08-07 10:21:03 +02:00
Jakub Konka
835f1fc03f
elf: fix off-by-one when referring to resolved table directly
2024-08-07 10:21:02 +02:00
Jakub Konka
0a198789f1
elf: scan LinkerDefined obj for symbol indirection too
2024-08-07 10:21:02 +02:00
Jakub Konka
137d43c0ea
elf: get hello-world glibc working again
2024-08-07 10:21:02 +02:00
Jakub Konka
26da7c8207
elf: fix symbol resolution for Objects
2024-08-07 10:21:02 +02:00
Jakub Konka
04f8f8ad3e
elf: do not re-init Symbol when initializing
2024-08-07 10:21:02 +02:00
Jakub Konka
8ca809d928
elf: move getStartStopBasename into Object
2024-08-07 10:21:02 +02:00
Jakub Konka
41e9b8b6c8
elf: fix compile errors
2024-08-07 10:21:02 +02:00
Jakub Konka
deeaa1bb0c
elf: redo symbol mgmt and ownership in ZigObject
2024-08-07 10:21:02 +02:00
Jakub Konka
de80e4fec2
elf: move symbol ownership to LinkerDefined
2024-08-07 10:21:02 +02:00
Jakub Konka
9fe69cc0b5
elf: move symbol ownership to SharedObject
2024-08-07 10:21:02 +02:00
Jakub Konka
d0367b0219
elf: move symbol ownership to Object
2024-08-07 10:21:02 +02:00
Jakub Konka
9ec415d4de
elf: null symbol is obsolete
2024-08-07 10:21:02 +02:00
Jakub Konka
518c7908f0
elf: always create symbol extra
2024-08-07 10:21:02 +02:00
Alex Rønne Petersen
f9f8942008
std.os.linux: Move clone() here and stop exporting it.
2024-08-07 01:19:51 -07:00
Andrew Kelley
75f78bfb77
Merge pull request #20922 from alexrp/vdso
...
`std.os.linux`: Fix VDSO for mips, add VDSO for riscv
2024-08-07 01:18:35 -07:00
Andrew Kelley
cd5f673cae
Merge pull request #20909 from alexrp/glibc-riscv
...
Support building glibc for riscv32/riscv64
2024-08-07 01:14:54 -07:00
Andrew Kelley
8184912a98
Merge pull request #20925 from alexrp/windows-tls
...
`std`: Some Windows TLS cleanup and fixes
2024-08-07 01:12:11 -07:00
Alex Rønne Petersen
c0681d6b6e
start: Add sparc32 support.
2024-08-07 01:09:18 -07:00
Alex Rønne Petersen
8cbf091a9a
std.os.linux.start_pie: Add sparc/sparc64 support.
2024-08-07 01:09:06 -07:00
Andrew Kelley
b071b10ce8
Merge pull request #20894 from alexrp/target-cleanup-4
...
`std.Target`: Minor rework to some `isArch()` functions, fix some related issues throughout `std`
2024-08-07 01:08:44 -07:00
Alex Rønne Petersen
8268d7be52
process_headers: Add arc-linux-gnu.
2024-08-07 01:07:09 -07:00
Jakub Dóka
a6486492be
std.crypto.ecdsa: use separate function for null seed ( #20953 )
...
Due to the `std.crypto.ecdsa.KeyPair.create` taking and optional of seed, even if the seed is generated, cross-compiling to the environments without standard random source (eg. wasm) (`std.crypto.random.bytes`) will fail to compile.
This commit changes the API of the problematic function and moves the random seed generation to a new utility function.
2024-08-07 01:06:15 -07:00
Alex Rønne Petersen
ebd0c6ffd0
std.zig.target: Add arc-linux-gnu.
...
https://lists.gnu.org/archive/html/info-gnu/2020-08/msg00002.html
2024-08-07 01:03:22 -07:00
Ryan Liptak
304519da27
Make Type.intAbiAlignment match LLVM alignment for x86-windows target
...
During the LLVM 18 upgrade, two changes were made that changed `@alignOf(u64)` to 4 for the x86-windows target:
- `Type.maxIntAlignment` was made to return 16 for x86 (200e06b). Before that commit, `maxIntAlignment` was 8 for windows/uefi and 4 for everything else
- `Type.intAbiAlignment` was made to return 4 for 33...64 (7e1cba7 + e89d6fc). Before those commits, `intAbiAlignment` would return 8, since the maxIntAlignment for x86-windows was 8 (and for other targets, the `maxIntAlignment` of 4 would clamp the `intAbiAlignment` to 4)
`src/codegen/llvm.zig` has its own alignment calculations that no longer match the values returned from the `Type` functions. For the x86-windows target, this loop:
ddcb7b1c11/src/codegen/llvm.zig (L558-L567)
when the `size` is 64 will set `abi` and `pref` to 64 (meaning an align of 8 bytes), which doesn't match the `Type` alignment of 4.
This commit makes `Type.intAbiAlignment` match the alignment calculated in `codegen/llvm.zig`.
Fixes #20047
Fixes #20466
Fixes #20469
2024-08-07 00:59:46 -07:00
Alex Rønne Petersen
00097c3bb8
std.Target: Some corrections and additions to charSignedness().
...
Sourced from GCC backends and some manual testing with clang.
2024-08-07 00:56:02 -07:00
Andrew Kelley
d721d9af69
update coff_dwarf standalone test to new API
...
and make it still test compilation on non-Windows
2024-08-07 00:48:32 -07:00
Andrew Kelley
2a651eab45
build runner: --fuzz not yet supported on Windows
2024-08-07 00:48:32 -07:00
Andrew Kelley
904fcda736
Compilation: fix -femit-docs
2024-08-07 00:48:32 -07:00
Andrew Kelley
ff503edc04
Compilation: fix not showing sub-errors for autodocs
2024-08-07 00:48:32 -07:00
Andrew Kelley
40edd11516
std.debug: fix compile errors on windows and macos
2024-08-07 00:48:32 -07:00
Andrew Kelley
8dae629c4f
update branch for latest std.sort changes
2024-08-07 00:48:32 -07:00
Andrew Kelley
529df8c007
libfuzzer: fix looking at wrong memory for pc counters
...
this fix bypasses the slice bounds, reading garbage data for up to the
last 7 bits (which are technically supposed to be ignored). that's going
to need to be fixed, let's fix that along with switching from byte elems
to usize elems.
2024-08-07 00:48:32 -07:00
Andrew Kelley
5f5a7b53a4
wasm zig source rendering: fix annotation location off-by-one
2024-08-07 00:48:32 -07:00
Andrew Kelley
1484f174ea
fuzzer web ui: fail scrolling into view gracefully
2024-08-07 00:48:32 -07:00
Andrew Kelley
895fa87d77
dump-cov: show seen PCs
2024-08-07 00:48:32 -07:00
Andrew Kelley
bfc2ee03e5
fuzzer web ui: resolve cwd in sources.tar
...
because the wasm code needs to string match against debug information
2024-08-07 00:48:32 -07:00
Andrew Kelley
38227e9289
fuzzer web UI: render PCs with red or green depending on coverage
2024-08-07 00:48:32 -07:00
Andrew Kelley
3d48602c99
fuzzer web UI: annotated PCs in source view
2024-08-07 00:48:32 -07:00
Andrew Kelley
ef4c2193fc
fuzzer web UI: navigate by source location index
...
This will help scroll the point of interest into view
2024-08-07 00:48:32 -07:00
Andrew Kelley
db69641061
fuzzing web ui: make entry point links clickable
2024-08-07 00:48:32 -07:00
Andrew Kelley
e64a00950e
fuzzer web ui: introduce entry points
...
so you can have somewhere to start browsing
2024-08-07 00:48:32 -07:00
Andrew Kelley
6e6164f8a6
fuzzer web ui: add coverage stat
2024-08-07 00:48:32 -07:00