Loris Cro
a23ab331a2
autodoc: fix analysis of closure_get instructions
2024-02-14 15:35:00 +01:00
Jakub Konka
3f5593205d
Merge pull request #18918 from ziglang/elf-better-addr-mgmt
...
elf: store relative offsets in atom and symbol
2024-02-14 07:32:38 +01:00
Andrew Kelley
5f92558290
std.posix.termios: bring V back
...
In d7563a7753393d7f0d1af445276a64b8a55cb857, I misunderstood what `cc_t`
was supposed to do. Those V enum values are indices into the array.
2024-02-13 20:10:32 -08:00
Jakub Konka
9ec0cf23ca
Merge pull request #18905 from ziglang/elf-mem-pressure
...
elf: reduce memory pressure
2024-02-14 01:08:51 +01:00
Jakub Konka
216a5594f6
elf: use u32 for all section indexes
2024-02-13 20:33:08 +01:00
Jakub Konka
e401930fa8
elf: store relative offsets in atom and symbol
2024-02-13 20:33:01 +01:00
Jakub Konka
c22bb38058
macho: scrap reader for preads when parsing archives
2024-02-13 19:18:27 +01:00
Jakub Konka
de30b30202
elf: scrap reader for preads when parsing archives
2024-02-13 18:57:49 +01:00
Felix Kollmann
8addf53fb5
Add timedWait to std.Thread.Semaphore ( #18805 )
...
* Add `timedWait` to `std.Thread.Semaphore`
Add example to documentation of `std.Thread.Semaphore`
* Add unit test for thread semaphore timed wait
Fix missing try
* Change unit test to be simpler
* Change `timedWait()` to keep a deadline
* Change `timedWait()` to return earlier in some scenarios
* Change `timedWait()` to keep a deadline (based on std.Timer)
(similar to std.Thread.Futex)
---------
Co-authored-by: protty <45520026+kprotty@users.noreply.github.com>
2024-02-13 11:51:42 -06:00
Andrew Kelley
d7563a7753
Merge pull request #18910 from ziglang/std-termios
...
std.os.termios: consolidate, correct, and complete API definitions
2024-02-13 05:06:52 -08:00
Jakub Konka
e5483b4ffc
elf: fix 32bit build
2024-02-13 10:48:10 +01:00
Andrew Kelley
ce3bd51597
std.os.termios: move it to be with the group
2024-02-12 21:58:37 -07:00
Andrew Kelley
e1ab57337f
std.c.speed_t: consolidate common across os
2024-02-12 21:53:54 -07:00
Andrew Kelley
ae107cf71b
std.os.speed_t: add type safety
...
and collect the missing flag bits from all the operating systems.
2024-02-12 21:49:09 -07:00
Andrew Kelley
a280ff2767
std.os.termios: add type safety to lflag field
...
This creates `tc_cflag_t` even though such a type is not defined by
libc.
I also collected the missing flag bits from all the operating systems.
2024-02-12 21:21:45 -07:00
Andrew Kelley
e97fa8b038
std.os.termios: add type safety to cflag field
...
This creates `tc_cflag_t` even though such a type is not defined by
libc.
I also collected the missing flag bits from all the operating systems.
2024-02-12 18:24:07 -07:00
Andrew Kelley
20abc0caee
std.os.termios: add type safety to oflag field
...
This creates `tc_oflag_t` even though such a type is not defined by
libc.
I also collected the missing flag bits from all the operating systems.
2024-02-12 17:28:09 -07:00
Andrew Kelley
47643cc5cc
std.os.termios: add type safety to iflag field
...
This creates `tc_iflag_t` even though such a type is not defined by
libc.
I also collected the missing flag bits from all the operating systems.
2024-02-12 16:43:51 -07:00
Andrew Kelley
0c88f927f1
std.os.termios: consolidate and correct
2024-02-12 16:21:21 -07:00
Jakub Konka
8bd01eb7a9
elf: refactor archive specific object parsing logic
2024-02-12 23:59:19 +01:00
Andrew Kelley
9a64318554
std.c.NCSS: consolidate and correct
2024-02-12 15:52:13 -07:00
Andrew Kelley
9bdf1ebe36
std.c.cc_t: consolidate same OS values
2024-02-12 15:44:28 -07:00
Andrew Kelley
5258c3caad
std: add type safety to cc_t
2024-02-12 15:41:38 -07:00
Jakub Konka
616a8f9853
elf: move code paths responsible for emitting object and archive into relocatable module
2024-02-12 23:37:51 +01:00
Jakub Konka
a94d5895cf
elf: do not prealloc input objects, pread selectively
2024-02-12 23:07:51 +01:00
CPestka
0c725a354a
Replaced loop with memcpys
2024-02-12 12:58:33 -08:00
Veikka Tuominen
51d67c7c8f
Sema: add declared here notes in fail
...
This ensures that the note is added in more places and that `errMsg` needs to be used in fewer places.
2024-02-12 12:54:32 -08:00
Andrew Kelley
fad5e7a997
Merge pull request #18898 from psnszsn/iouring_waitid
...
io_uring: add waitid operation
2024-02-12 12:20:12 -08:00
Andrew Kelley
0c1b9992fd
Merge pull request #18821 from jacobly0/x86_64-tests
...
x86_64: pass more tests
2024-02-12 12:18:03 -08:00
Andrew Kelley
f995c1b08a
std.c.O: fix illumos regression
...
introduced in c3eb592a343d25bbb0f79b80104d7890877c7af6
2024-02-12 01:06:27 -07:00
Jacob Young
e27db373ec
x86_64: implement @clz and @ctz of big integers
2024-02-12 05:25:07 +01:00
Jacob Young
d894727873
x86_64: implement @byteSwap of big integers
2024-02-12 05:25:07 +01:00
Jacob Young
271505cfc8
x86_64: fix compiler_rt tests
2024-02-12 05:25:07 +01:00
Jacob Young
bcbd49b2a6
x86_64: implement shifts of big integers
2024-02-12 05:25:07 +01:00
Jacob Young
9023ff04d0
x86_64: fix register clobber
2024-02-12 05:25:07 +01:00
Jacob Young
a9f738e56b
x86_64: implement c abi for bool vectors
2024-02-12 05:25:07 +01:00
Jacob Young
c6b3db8910
x86_64: implement @abs of big integers
2024-02-12 05:25:07 +01:00
Jacob Young
7c9a96111c
x86_64: fix assert location
2024-02-12 05:25:07 +01:00
Jacob Young
5a62f26579
x86_64: fix packed load
2024-02-12 05:25:07 +01:00
Jacob Young
f2a62d25fc
x86_64: implement ret_safe
2024-02-12 05:25:07 +01:00
Jacob Young
c619551f7d
x86_64: fix incorrect alignment check
2024-02-12 05:25:07 +01:00
Jacob Young
6235762c09
x86_64: implement mul, div, and mod of large integers
...
This enables the last compiler-rt test disabled for the x86_64 backend.
2024-02-12 05:25:07 +01:00
Andrew Kelley
c3eb592a34
Merge pull request #18886 from ziglang/std.os.O-safety
...
some API work on std.c, std.os, std.os.wasi
2024-02-11 18:08:08 -08:00
Andrew Kelley
616f74ba20
add behavior test for recently fixed wasm backend bug
...
Adds the corresponding behavior test for the fix in
320c4d68f5f40794ae31d5535de9c3a8ff5cb471.
2024-02-11 14:14:59 -07:00
Andrew Kelley
d40b71a39f
CI: update wasmtime to v10.0.2
...
The newest release changes the CLI; let's wait until that breaking
change finds its way into system package managers before updating to it.
2024-02-11 13:38:56 -07:00
Andrew Kelley
eda58a2f46
TypedValue: fix printing some nested things
2024-02-11 13:38:56 -07:00
Andrew Kelley
7680c5330c
some API work on std.c, std.os, std.os.wasi
...
* std.c: consolidate some definitions, making them share code. For
example, freebsd, dragonfly, and openbsd can all share the same
`pthread_mutex_t` definition.
* add type safety to std.c.O
- this caught a bug where mode flags were incorrectly passed as the
open flags.
* 3 fewer uses of usingnamespace keyword
* as per convention, remove purposeless field prefixes from struct field
names even if they have those prefixes in the corresponding C code.
* fix incorrect wasi libc Stat definition
* remove C definitions from incorrectly being in std.os.wasi
* make std.os.wasi definitions type safe
* go through wasi native APIs even when linking libc because the libc
APIs are problematic and wasteful
* don't expose WASI definitions in std.posix
* remove std.os.wasi.rights_t.ALL: this is a footgun. should it be all
future rights too? or only all current rights known? both are
the wrong answer.
2024-02-11 13:38:55 -07:00
Luuk de Gram
320c4d68f5
wasm: correctly lower packed structs in arguments
...
When an argument is a 'local', which is the case when it's a parameter,
we should not attempt to load it from memory. Instead, we directly emit
it to the stack. Only when the `WValue` is ensure to live in the linear
data section do we load it from memory onto the stack.
closes #18894
2024-02-11 17:09:18 +01:00
Vlad Pănăzan
d2789908ed
io_uring: add waitid operation
...
This is the equivalent of a waitid(2) syscall and can be used to
be notified about child process state changes.
Available since kernel 6.7
2024-02-11 15:47:03 +01:00
Vlad Pănăzan
20ea0012f0
linux: add missing io_uring opcodes
2024-02-11 15:43:12 +01:00