25727 Commits

Author SHA1 Message Date
Jakub Konka
7a16a97671 x86_64: add simple disassembler interface to the encoder 2023-09-13 21:51:43 +02:00
Jakub Konka
9de0df76a8 elf: allocate .bss section and matching PHDR 2023-09-13 21:51:43 +02:00
Jakub Konka
10a99f8f64
Merge pull request #17141 from ziglang/elf-linker
elf: enable Zig's ELF linker on non-incremental codepaths (LLVM, clang)
2023-09-13 21:49:10 +02:00
Pascal S. de Kloe
4a44b79935 mem: explicit Allocator.Error on concat and join 2023-09-13 13:52:05 +03:00
Jakub Konka
0d924d2da6 elf: look for entry point globally if not set by incremental compiler 2023-09-13 12:33:51 +02:00
Jakub Konka
31f363d51f elf: enable linker for non-incremental code paths 2023-09-13 12:17:02 +02:00
Jakub Konka
4d29b39678
Merge pull request #17113 from ziglang/elf-linker
elf: upstream zld/ELF functionality, part 1
2023-09-13 10:07:07 +02:00
Ryan Liptak
89ea67aee2 Disable flaky part of Dir.rename directories test on Windows
See https://github.com/ziglang/zig/issues/17134
2023-09-13 03:46:00 -04:00
Andrew Kelley
cb6201715a InternPool: prevent anon struct UAF bugs with type safety
Instead of using actual slices for InternPool.Key.AnonStructType, this
commit changes to use Slice types instead, which store a
long-lived index rather than a pointer.

This is a follow-up to 7ef1eb1c27754cb0349fdc10db1f02ff2dddd99b.
2023-09-12 20:08:56 -04:00
Jakub Konka
8142349d69 elf: add missing input zig source files to cmake 2023-09-13 00:40:08 +02:00
Jakub Konka
6910a50ae5 elf: add u64 to usize casts where required 2023-09-13 00:31:41 +02:00
Andrew Kelley
7e2b6b0f1b Revert "ci: use zig build check-fmt instead of zig fmt --check"
This reverts commit 4d1432299fe5dccef1e8254800e365c4d6c0d435.

Please don't hard-code unrelated concerns this way. build.zig should not
have awareness of the naming conventions for cmake build directories.
2023-09-12 14:32:05 -07:00
Jakub Konka
1a6d12ea92 elf: clean up and unify symbol ref handling in relocs
Also, this lets us re-enable proper undefined symbols tracking.
2023-09-12 23:27:14 +02:00
Lucas Culverhouse
5b7eefce46
std.math.cbrt: fixed -0.0 evaluating to 0.0 2023-09-12 18:39:34 +00:00
Jakub Konka
9719fa7412 elf: include C compilation artifacts on the linker line 2023-09-12 19:26:51 +02:00
Jakub Konka
ae74a36af0 elf: resolve and write objects to file 2023-09-12 19:17:57 +02:00
Jakub Konka
652ebf3b6a elf: allocate objects, currently atom-by-atom 2023-09-12 18:07:10 +02:00
Jakub Konka
9db472cff6 elf: set output section index of a global when resolving 2023-09-12 17:52:55 +02:00
Jakub Konka
472d326a8c elf: set output section index when parsing objects 2023-09-12 17:35:56 +02:00
Jakub Konka
44e84af874 elf: add simplistic reloc scanning mechanism 2023-09-12 16:32:55 +02:00
Jakub Konka
c654f3b0ee elf: claim unresolved dangling symbols that can be claimed 2023-09-12 15:44:16 +02:00
Jakub Konka
b478a0dd1a elf: mark imports-exports; populate symtab with objects 2023-09-12 15:14:38 +02:00
Jakub Konka
962b46148d elf: add simplistic symbol resolution 2023-09-12 14:36:55 +02:00
Jakub Konka
53c3757c00 elf: start fixing symbol resolution 2023-09-12 14:02:15 +02:00
Ruben Dimas
402468b210 std.math.asinh: changed unsigned int to hexadecimal 2023-09-12 22:22:07 +12:00
Ruben Dimas
a8a4f1755e std.math.asinh: fixed -0.0 evaluating to 0.0 2023-09-12 22:22:07 +12:00
Jakub Konka
00787885f4 elf: report undefined symbols in objects 2023-09-12 00:10:54 +02:00
Techatrix
7827265ea8
json: respect max_value_len when parsing std.json.Value (#17107) 2023-09-11 17:00:06 -04:00
Jakub Konka
67d458370d elf: add prelim impl of Object parsing 2023-09-11 22:49:42 +02:00
Jakub Konka
3df58a9583 elf: add basic error reporting for positional parsing 2023-09-11 16:32:58 +02:00
Jakub Konka
65b9597c07 elf: report undefined symbols as errors 2023-09-11 16:02:21 +02:00
Jakub Konka
7a9eba2f85 elf: emit relocation to an extern function 2023-09-11 10:52:30 +02:00
Arnau
a0968be83c
Documented linksection
Fixes #1520
2023-09-11 10:54:59 +03:00
Jakub Konka
d07edfabd6 elf: simplify handling of relocs for atoms 2023-09-11 07:59:54 +02:00
Jakub Konka
975cb235cc
Merge pull request #17081 from Techatrix/wasm-float-op
wasm: implement more float operations on f80 and f128
2023-09-11 07:59:30 +02:00
Michael Dusan
acc9471915 doc: inline comptime conditional block
Better illustrate what happens to the block after inlining comptime
conditionals.

closes #17106
2023-09-11 00:29:56 +03:00
Jakub Konka
4b082d89c9 elf: decouple notion of atom free list from shdrs
Not every section will have the need for such a free list.
2023-09-10 21:58:45 +02:00
Techatrix
ab970094ab wasm: enable successful behavior tests 2023-09-10 15:59:02 +02:00
Techatrix
ec7f88945b wasm: implement more math operations on 128 bit integers
these operations are required to be able to print floats
2023-09-10 15:59:02 +02:00
Techatrix
9d6b6bddb6 wasm: implement common conversions between integers/floats with bitsize larger than 64 bits 2023-09-10 15:59:02 +02:00
Techatrix
55694c2a4d wasm: implement comparison on f80 and f128 2023-09-10 15:59:02 +02:00
Techatrix
673ebfabd1 wasm: implement negation on f80 and f128 2023-09-10 15:40:52 +02:00
Jakub Konka
a3ce011408 elf: allocate linker defined symbols 2023-09-10 11:10:16 +02:00
Jakub Konka
1c3fd16c37 elf: write linker-defined symbols to symtab 2023-09-10 09:10:00 +02:00
Jakub Konka
a455b5692a elf: create required linker-defined symbols 2023-09-10 08:41:13 +02:00
Ian Johnson
d2014fe971 Autodoc: simplify search text on mobile
This prevents the placeholder text from spilling out of the search bar
on smaller screens.
2023-09-09 19:48:18 +02:00
Ian Johnson
51d7700c8c Autodoc: tweak page layout
Closes #17011
Closes #17012

This commit allows the logo to scale more freely to fit its container,
and removes some extra margins so that the content scroll bar is flush
with the right side of the viewport.
2023-09-09 19:48:18 +02:00
Ian Johnson
2f26b15995 Autodoc: fix search results navigation
Closes #17013
2023-09-09 19:47:57 +02:00
Jakub Konka
a6e9163284 elf: clean up naming and remove unused functions 2023-09-09 16:03:39 +02:00
Wooster
4d1432299f ci: use zig build check-fmt instead of zig fmt --check
We already have a zig build step for this: test-fmt.

* Rename the test-fmt step to check-fmt.
  test-fmt sounds like it runs tests for `zig fmt` itself (lib/std/zig/render.zig).
* Use it instead of `zig fmt --check` in the CI scripts.
* Also use it in CI scripts that didn't have this check before.
2023-09-09 15:49:18 +03:00