Dmitry Atamanov
e16997a66c
Add process_madvise to Linux syscalls ( #7450 )
2020-12-17 18:58:09 +02:00
LemonBoy
135f4791e5
std: Don't hash undefined bits
...
auto_hash must be extra careful when hashing integers whose bit size is
not a multiple of 8 as, when reinterpreted with mem.asBytes, may contain
undefined non-zero bits too.
2020-12-17 12:00:48 +01:00
Alexandros Naskos
85cc3f24a0
Only check for evented mode in windows.OpenFile when in async mode
2020-12-17 11:08:21 +02:00
Jakub Konka
b42ef0e6ea
macho: refactor calculating LEB128 sizes
2020-12-17 10:04:53 +01:00
Jakub Konka
3e9e79378d
macho: deduplicate libc headers between macos arch
2020-12-17 10:04:53 +01:00
Jakub Konka
2d5d661703
macho: no need to parse symbol/string tables
2020-12-17 10:04:53 +01:00
Jakub Konka
ae535111a4
macho: cleanup (lazy) binding info tables
2020-12-17 10:04:53 +01:00
Jakub Konka
5e913c9c2c
macho: move (lazy)binding tables into imports module
2020-12-17 10:04:53 +01:00
Jakub Konka
46b2a08d06
macho: parse binding info into a table of entries
2020-12-17 10:04:53 +01:00
Jakub Konka
77e545892e
macho: do not error out on unknown load commands
...
Also, do not try to fixup missing libSystem for dylibs.
2020-12-17 10:04:53 +01:00
Jakub Konka
b099fdff93
macho: parse symbol and string tables
2020-12-17 10:04:53 +01:00
Jakub Konka
f5a0b9315b
macho: calculate next available dylib ordinal
2020-12-17 10:04:53 +01:00
Jakub Konka
cc2592969d
macho: clean up formatting
2020-12-17 10:04:53 +01:00
Jakub Konka
3971522fee
macos: add unfiltered aarch64 libc headers
2020-12-17 10:04:53 +01:00
Jakub Konka
2e7883c597
lld+macho: lld xcomp to x86_64 macos now works
2020-12-17 10:04:53 +01:00
Jakub Konka
eb528a9cbc
lld+macho: add missing LC_LOAD_DYLIB cmd
2020-12-17 10:04:53 +01:00
Andrew Kelley
6dfe9cc83e
zig cc: default to a.exe on windows
...
This matches Clang. Thanks to Abner Coimbre for pointing this out.
2020-12-16 21:37:15 -07:00
Andrew Kelley
8975fa5b38
stage2: add test_evented_io to cache hash
2020-12-16 19:22:48 -07:00
Andrew Kelley
8f1408578c
update the CPU target features and models
...
Rather than directly pasting the output from the
target-details-generator tool, we have to look at the diff line by line
and decide how to incorporate the changes.
The baseline abstraction is something that Zig provides.
The changes to x86 appear to be incorrect. After LLVM commit
3ad09fd03c51823aeb0bcbd7898aada33e9228d6 the CPU features are stored in
a different data layout in their tables, and so we need to update the
target details extraction tool to match.
2020-12-16 17:25:48 -07:00
Andrew Kelley
bbb3403b5d
stage1: apply LLVM ssp attributes globally
...
instead of per-function. Otherwise LLVM asserts with:
"stack protected callee but caller requested no stack protector"
2020-12-16 15:45:32 -07:00
Andrew Kelley
da54e7cd00
update clang.zig and translate-c for the clang C++ API changes
2020-12-16 14:29:27 -07:00
Andrew Kelley
755c558026
Merge remote-tracking branch 'origin/master' into llvm12
2020-12-16 14:24:36 -07:00
Jakub Konka
f59069f3d0
Update clang options
...
llvm commit b2851aea80e5a8f0cfd6c3c5a56a6b00fb28c6b6
2020-12-16 18:38:11 +01:00
Jakub Konka
4b62f1bd93
Update changes due to different CPU feature sets
...
llvm commit b2851aea80e5a8f0cfd6c3c5a56a6b00fb28c6b6
2020-12-16 18:25:25 +01:00
Jakub Konka
1c40a4df09
Update zig_llvm.cpp and other bits
...
Include updates to corresponding zig sources
llvm commit b2851aea80e5a8f0cfd6c3c5a56a6b00fb28c6b6
2020-12-16 18:13:58 +01:00
Jakub Konka
6f3ed2f71f
Update target details
...
llvm commit b2851aea80e5a8f0cfd6c3c5a56a6b00fb28c6b6
zig-llvm-target-details-generator commit
4299674ecabeb668b0d84285cd1b41a652a391b1
2020-12-16 18:13:52 +01:00
Jakub Konka
38bf94280b
Update libcxxabi
...
llvm commit b2851aea80e5a8f0cfd6c3c5a56a6b00fb28c6b6
2020-12-16 12:19:09 +01:00
Jakub Konka
f9a11fbfaf
Update libcxx
...
llvm commit b2851aea80e5a8f0cfd6c3c5a56a6b00fb28c6b6
2020-12-16 12:18:55 +01:00
Jakub Konka
1e66ac5755
Update libunwind
...
llvm commit b2851aea80e5a8f0cfd6c3c5a56a6b00fb28c6b6
2020-12-16 12:18:43 +01:00
Jakub Konka
8612dac225
Update clang headers
...
llvm commit b2851aea80e5a8f0cfd6c3c5a56a6b00fb28c6b6
2020-12-16 12:18:33 +01:00
Jakub Konka
83ff94406e
Update clang drivers
...
llvm commit b2851aea80e5a8f0cfd6c3c5a56a6b00fb28c6b6
2020-12-16 12:18:14 +01:00
data-man
d877eb0e8d
Fix typo in math.order
2020-12-16 12:14:44 +02:00
Veikka Tuominen
d3a57b96a9
translate-c: detect parenthesized string literals
2020-12-16 12:13:23 +02:00
Jakub Konka
9c2d8056ce
Update LLVM version numbers in CMake
2020-12-16 09:37:32 +01:00
Alexandros Naskos
aa6654a4b3
Fix compilation for MacOS
2020-12-16 00:47:41 +02:00
Andrew Kelley
b3c1ced2c3
Merge pull request #7431 from LemonBoy/fix-7426
...
stage1: Fix crash in can_mutate_comptime_var_state
2020-12-15 15:07:49 -05:00
Christian Wesselhoeft
b3f4802aa0
mingw-w64: add .def files for xaudio2_8
2020-12-15 15:00:39 -05:00
luna
0c33624a45
create SendToError ( #7417 )
...
* add SendToError
* remove error catch
* add missing SendToError entries
* add mappings to new errors for posix
* map windows sendto() errors
2020-12-15 14:56:42 -05:00
LemonBoy
5f7352b5b5
stage2: Add -include libc-symbols.h when building crtn.S
...
This -include is added for nearly every file in glibc's makefiles.
2020-12-15 14:53:46 -05:00
Sébastien Marie
96e3222796
openbsd: crt0.o file is different when build static or dynamic mode
...
it is a first step for support static *and* dynamic mode for openbsd
2020-12-15 14:53:23 -05:00
Sébastien Marie
8bf5a3a5c1
openbsd: correct few structs
...
- addrinfo: addr and canonname are switched (wrong layout)
- addrinfo, Flock, msghdr struct: use proper c_xxx type instead of fixed size. it should help using struct on all architectures supported by openbsd
2020-12-15 14:49:42 -05:00
Sebastien Marie
7cd6c25c8f
openbsd: link with required system libraries ( #7380 )
...
* openbsd: use -lpthread when linking
and while compiling zig stage2, use c++ and c++abi too
2020-12-15 14:45:48 -05:00
LemonBoy
8a2ab60fca
stage1: Don't skip steps when analyzing union types
...
Don't cut any corner and properly run the type trough every single step
even though it has no fields (or, better, the sum of the size of all its
fields is zero).
Fix the logic to consider an explicit non-zero-sized tag enough to treat
the type as sized.
Closes #7451
2020-12-15 14:40:21 -05:00
LemonBoy
9e5869262a
std: Bool has no definite representation too
...
The padding bits are undefined.
2020-12-14 20:06:46 +01:00
LemonBoy
44556bfebe
std: non-byte-multiple sized integers have no definite representation
...
Closes #7445
2020-12-14 20:06:46 +01:00
Alexandros Naskos
da007f318b
Implement std.fs.Watch on Windows
...
Use unmanaged containers in std.fs.Watch
2020-12-14 21:03:50 +02:00
Alexandros Naskos
5112ab8233
Fixed std.fs.Watch implementation on Linux
...
Added .Deleted event to std.fs.Watch on Linux
2020-12-14 21:00:54 +02:00
LemonBoy
bbfa3550a0
Add a test case
...
Co-authored-with: Vexu <git@vexu.eu>
2020-12-14 17:39:35 +01:00
data-man
8591f30b0d
Add missed Linux syscalls
2020-12-14 18:22:28 +02:00
Jakub Konka
91e8be385c
Merge pull request #7411 from LemonBoy/sigaction-smoke
...
std: Improve sigaction interface
2020-12-14 17:16:55 +01:00