30916 Commits

Author SHA1 Message Date
Jakub Konka
5cb51c10de elf: fix relocatable mode 2024-09-04 13:34:26 +02:00
Jakub Konka
6b53dc9461 elf: actually allocate atoms within each section chunk 2024-09-04 13:34:26 +02:00
Jakub Konka
6a50a0f0ed elf: update osec index for section chunks in objects 2024-09-04 13:34:26 +02:00
Jakub Konka
f87a7251a3 elf: actually write allocated atoms in object files 2024-09-04 13:34:26 +02:00
Jakub Konka
874ef6308e elf: do not create .eh_frame section if ZigObject already did so 2024-09-04 13:34:26 +02:00
Jakub Konka
45e46f0fb9 elf: allocate atom chunks using allocateChunk mechanics in objects 2024-09-04 13:34:25 +02:00
Jakub Konka
1ef96f05eb elf: introduce SectionChunk - a container of atoms per object file 2024-09-04 13:34:25 +02:00
Jakub Konka
6ec5df3898 elf: allocate .tdata and .tbss using allocateAtom mechanics 2024-09-04 13:34:25 +02:00
Jakub Konka
3e100c5dab dwarf: make Section.off a function 2024-09-04 13:34:25 +02:00
Jakub Konka
da60159d85 elf+dwarf: refer sections via section symbols 2024-09-04 13:34:25 +02:00
Jakub Konka
acb91f4b30 elf: fix emitting correct .rela. sections in -r mode 2024-09-04 13:34:25 +02:00
Jakub Konka
25fa092bb1 elf: fix a typo in setting ZigObject.data_relro_index 2024-09-04 13:34:25 +02:00
Jakub Konka
bc39bddd5f elf: remove isDebugSection helper 2024-09-04 13:34:25 +02:00
Jakub Konka
ef6ee90ff8 elf: remove now unused number_of_zig_segments 2024-09-04 13:34:25 +02:00
Jakub Konka
2d0f4fc9c0 elf: allocate .text in ZigObject similarly to .eh_frame 2024-09-04 13:34:25 +02:00
Jakub Konka
848535535d elf: allocate .data.rel.ro and .rodata in ZigObject similarly to .eh_frame 2024-09-04 13:34:25 +02:00
Jakub Konka
0b92404ddf elf: allocate .data in ZigObject similarly to .eh_frame 2024-09-04 13:34:25 +02:00
Jakub Konka
37a1f0e7f2 elf: allocate .bss in ZigObject similarly to .eh_frame 2024-09-04 13:34:25 +02:00
Jakub Konka
8f1ce3c85b elf: shuffle some stages to make it clear what needs what 2024-09-04 13:34:25 +02:00
Jakub Konka
d32af9ea2a elf: move initOutputSection into Elf from Object 2024-09-04 13:34:25 +02:00
Jakub Konka
b44dd599ad elf: split Atom.allocate into Atom-independent parts 2024-09-04 13:34:25 +02:00
Arwalk
f87dd43c12
stdlib : base64 encode to writer (#20961) 2024-09-04 08:10:12 +00:00
Alex Rønne Petersen
e5ee9c1e43 std.elf: Bring the EM enum up to date.
Based on:

* `include/elf/common.h` in binutils
* `include/uapi/linux/elf-em.h` in Linux
* https://www.sco.com/developers/gabi/latest/ch4.eheader.html

I opted to use the tag naming of binutils because it seems to be by far the most
complete and authoritative source at this point in time.
2024-09-03 17:44:01 -07:00
Alex Rønne Petersen
290ccb160e glibc: Avoid building and linking stub libraries that were emptied in 2.34.
Closes #20919.
2024-09-03 17:33:23 -07:00
Michael Dusan
7a4d69983a AstGen: update @errorCast to maybe eval to err
Consequently, `AstGen.ret()` now passes the error code to
`.defer_error_code`. Previously, the error union value was passed.

closes #20371
2024-09-03 22:56:23 +01:00
Andrew Kelley
242d268a06
Merge pull request #21277 from antlilja/llvm-module-flags
LLVM: Set module flags through Builder instead of LLVM API bindings
2024-09-02 17:57:27 -07:00
Alex Rønne Petersen
9bcb0e938c
std.crypto.ml_kem: Reduce test iteration counts from 100 to 10. (#21285)
Closes #21255.
2024-09-02 23:20:48 +00:00
fdfdjfk3
a670f55195
std.fmt.fmtIntSize*: document when precision is ignored 2024-09-02 14:21:59 +03:00
Jeremy Hertel
13da34955c std.hash_map: fix error message in getAutoHashFn 2024-09-02 12:09:10 +03:00
Matthew Lugg
6d2945f1fe
Merge pull request #21264 from mlugg/decl-literals
compiler: implement decl literals
2024-09-02 00:44:11 +01:00
Jeremy Hertel
227fb4875f std.math: rename make_f80 to F80.toFloat and break_f80 to F80.fromFloat 2024-09-02 00:10:22 +03:00
mlugg
0b9fccf508
std: deprecate some incorrect default initializations
In favour of newly-added decls, which can be used via decl literals.
2024-09-01 17:34:07 +01:00
mlugg
6e3e23a941
compiler: implement decl literals
Resolves: #9938
2024-09-01 17:34:07 +01:00
mlugg
9e683f0f35
compiler: provide result type to operand of try
This is mainly useful in conjunction with Decl Literals (#9938).

Resolves: #19777
2024-09-01 17:34:07 +01:00
David Rubin
fbac7afa0f
riscv: implement errunion_payload_ptr_set 2024-09-01 17:34:06 +01:00
WillLillis
28383d4d98 fix(Sema): patch segfault in finishStructInit 2024-09-01 17:31:00 +03:00
antlilja
15b4c01ab1 Rename usesLargePIC to picLevel and return the PIC level 2024-09-01 15:12:49 +02:00
antlilja
76908da3ac LLVM: Set module flag behaviors to match what LLVM and clang does 2024-09-01 14:43:30 +02:00
antlilja
7cb87c14fe LLVM: Remove cpp bindings for setPICLevel, setPIELevel and setCodeModel 2024-09-01 14:21:19 +02:00
antlilja
629bd90e26 LLVM: Emit module flags through Builder instead of LLVM API 2024-09-01 14:10:56 +02:00
Nico Elbers
cad65307b7 std: make debug.dumpStackPointerAddr compile
Very simply add the format specifier to the print statement.
Since debug.print is hard coded I couldn't come up with a reasonalble
way to add a test, and since this function is simple enough I doubt it's
useful.

fixes one part of #21094
2024-09-01 00:45:31 -07:00
Jeremy Hertel
52fc046907 std.c: fix pthread_mutex_t size for x86_64-linux-gnu 2024-09-01 00:44:09 -07:00
Federico Di Pierro
b7a98d0d59 lib: guard definition of strl{cat,cpy} against glibc version when _FORTIFY_SOURCE is enabled.
Signed-off-by: Federico Di Pierro <nierro92@gmail.com>
2024-09-01 00:34:15 -07:00
Hila Friedman
a76e98e7d5 remove length assertion from mprotect 2024-08-31 20:59:47 -07:00
YANG Xudong
c34cfe486d
loongarch: use medium code model for zig loongarch64 binary (#21153) 2024-08-31 20:59:24 -07:00
Andrew Kelley
96daca7b3b
Merge pull request #21173 from mrjbq7/writeStackTrace
std.debug: remove allocator from std.debug.writeStackTrace()
2024-08-31 20:57:27 -07:00
fn ⌃ ⌥
69e304bd51 std.c.passwd: support macOS and NetBSD 2024-08-31 20:56:27 -07:00
YANG Xudong
67fc44fc6f add qemu-loongarch64 2024-08-31 20:49:24 -07:00
Andrew Kelley
37df6ba86e langref: separate header for faulty default field values 2024-08-30 21:12:17 -07:00
Andrew Kelley
e084c46ed6 fix invisible merge conflict 2024-08-30 14:55:28 -07:00