Andrew Kelley
6926e6e705
Merge remote-tracking branch 'origin/master' into llvm13
2021-08-19 17:09:18 -07:00
Jacob G-W
df10e998ee
stage2 x86_64: enable bitwise and + or and add tests
2021-08-19 22:21:16 +03:00
Justin Whear
62fe4a0ba8
std.rand.Random: add enumValue() ( #9583 )
...
* add Random.enumValue()
* edits suggested by review
* applied zig fmt
* Rewrite to use std.enums.values
Implemented pfgithub's suggestion to rewrite against this function, greatly simplifying the implementation.
Co-authored-by: Justin Whear <justin@economicmodeling.com>
2021-08-19 22:18:23 +03:00
Meghan
7e7d67d8ee
std.fmt: add support for printing slices strings ( #9562 )
2021-08-19 14:12:11 +03:00
Jacob G-W
d785dc49aa
stage2: add error set type equality
2021-08-19 14:09:53 +03:00
Jacob G-W
2129cc5c54
stage2: fix typo
...
this made errors go from stuff like:
> type comptime_int cannot represent integer value 40
to
> type u5 cannot represent integer value 40
which makes much more sense
2021-08-19 13:48:52 +03:00
Robin Voetter
5cd1d42a35
Add mask before truncating dereferenced bit pointers ( #9584 )
2021-08-19 01:20:50 -04:00
Andrew Kelley
87d5db057b
update libcxx to latest llvm release/13.x
...
rc1 + 98feb20df14e6cf9ce77f097ceb8dd188c9070a7
2021-08-18 15:27:00 -07:00
Andrew Kelley
92b69215e6
update libcxx, libcxxabi, libunwind, and tsan to llvm 13 rc1
2021-08-16 23:32:13 -07:00
Andrew Kelley
1b8f0d8b56
add m68k glibc (2.33) headers
2021-08-16 01:44:48 -07:00
Andrew Kelley
968c969e2a
add m68k musl (1.2.2) headers
...
This commit also corrects a mistake from commit
6dc2236054dfcf911ce848f67a4078740a90783a which did not properly delete
files when upgrading to the 1.2.2 musl headers.
2021-08-16 01:40:27 -07:00
Jakub Konka
4c9d41730e
Merge pull request #9568 from ziglang/issue-9565
...
macho: don't embed codesig unless targeting aarch64-macos
2021-08-16 10:17:54 +02:00
Andrew Kelley
2f599b655b
update src/ to LLVM 13 rc1 API
2021-08-16 01:11:10 -07:00
Andrew Kelley
a69b86003c
update CI scripts to llvm 13 rc1
2021-08-15 23:11:01 -07:00
Andrew Kelley
7adf15682c
update target CPU features with LLVM 13 rc1 data
2021-08-15 23:09:55 -07:00
Andrew Kelley
d6467dcf71
update clang tools to 13 rc1
2021-08-15 18:06:29 -07:00
Andrew Kelley
21606339af
update C header files to clang 13 rc1
2021-08-15 18:00:10 -07:00
Andrew Kelley
78ff2a148a
cmake: update to LLVM 13 rc1
...
More precisely, aac4fe380d16a957627af2d6e5110ee35ad7e7e7 which is the
current tip of release/13.x.
Immediately following commits are tracking the same LLVM version.
2021-08-15 17:48:37 -07:00
Jakub Konka
e2303840de
Fix AST and build errors
2021-08-15 23:50:39 +02:00
Jakub Konka
d5f7963331
macho: adhoc code sign binaries targeting aarch64-xxx-simulator
2021-08-15 18:29:19 +02:00
Jakub Konka
f82c26eb04
macho: don't embed codesig unless targeting aarch64-macos
...
When developing an iOS app for example, the developer is required
to use Apple's codesign utility to generate a valid signature
as done by Xcode.
2021-08-15 18:07:30 +02:00
Veikka Tuominen
e9bf8014bd
Merge pull request #9559 from squeek502/walker-basename
...
fs.Dir.Walker: Fix basename missing its first character for direct children of the initial directory
2021-08-14 11:08:10 +03:00
Meghan
fcf2ce0ffe
std.fmt: add name of type in unsupport format string compile error
2021-08-14 11:07:01 +03:00
Thom Chiovoloni
c2635f9b02
Fix darwin ulock usage on macOS ( #9545 )
...
* Fix darwin ulock usage on macOS
* Fix review comments, and correctly handle timeout overflow on darwin
* Apply more review suggestions
2021-08-13 22:43:42 -05:00
Ayende Rahien
65208a7fa2
Expose register_eventfd, register_eventfd_async, unregister_eventfd i… ( #9449 )
...
* Expose register_eventfd, register_eventfd_async, unregister_eventfd in the IO URing API
* Fixing formatting
* Fixing typo
* Removing unnecessary casts and adding better comments for a single registration of eventfd
* Update lib/std/os/linux/io_uring.zig
Co-authored-by: Joran Dirk Greef <joran@coil.com>
* Update lib/std/os/linux/io_uring.zig
Co-authored-by: Joran Dirk Greef <joran@coil.com>
* Updating util function name
Co-authored-by: Joran Dirk Greef <joran@coil.com>
2021-08-13 22:41:18 -05:00
Ryan Liptak
f6bb56f8c7
Improve fs.Walker test
...
- Take into account that iteration order is undefined by checking against a map instead of relying on numerically sorted iteration order
- Check both path and basename for each entry instead of just path
2021-08-13 16:43:52 -07:00
Ryan Liptak
7e07df06a4
ComptimeStringMap: expose kvs array in returned struct
...
Allows for iterating over the kvs when constructing with a list literal instead of having to create a separate array to pass into ComptimeStringMap in order to maintain access to the values.
For example when making a set, before in order to loop over the kvs you'd have to do something like:
const MyKV = struct { @"0": []const u8 };
const kvs: []const MyKV = &[_]MyKV{ .{ @"0" = "foo"}, .{ @"0" = "bar" } };
const map = ComptimeStringMap(void, kvs);
for (kvs) |kv| {}
whereas now it's possible to do:
const map = ComptimeStringMap(void, .{ .{"foo"}, .{"bar"} });
for (map.kvs) |kv| {}
2021-08-13 16:22:56 -07:00
Ryan Liptak
8ff49966bc
fs.Walker: Fix basename missing its first character for direct children of the initial directory
...
Closes #9557
2021-08-13 16:22:56 -07:00
Jakub Konka
1373df4c34
Merge pull request #9227 from mathetake/libc-wasi-test
...
WASI,libc: fix libstd with wasi-libc linkage, and enable tests.
2021-08-13 21:56:32 +02:00
Takeshi Yoneda
68617c9fb0
Add comment about compiletime check.
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io>
2021-08-13 21:54:18 +09:00
Takeshi Yoneda
ca4898c0f3
Use std.buuiltin instead of importing builtin
...
Signed-off-by: Takeshi Yoneda <takeshi@tetrate.io>
2021-08-13 21:49:52 +09:00
Jakub Konka
c53423f8aa
macho: don't cache unused link options
...
This will change incrementally once we support more linker options.
2021-08-13 10:46:53 +02:00
Andrew Kelley
0961c1975a
update_cpu_features tool: work around stage1 bug
...
This works around a stage1 compiler bug resulting in a segfault when
trying to use the tool.
2021-08-12 11:30:55 -07:00
Andrew Kelley
55c6a784a5
stage2 frontend improvements - @ptrCast and optionals
...
* AstGen: use coerced_ty ResultLoc on array types and rely on Sema
doing type coercion, to reduce the size of the ZIR for these
instructions.
* Sema: implement `@ptrCast`.
* Sema: implement coercion from `T` to `?T` with an intermediate
coercion rather than equality check.
2021-08-12 10:48:54 -07:00
Andrew Kelley
fc55814faa
compiler-rt: do not depend on usingnamespace
...
The idea is to depend on this language feature as little as possible
with the hopes that it can be adjusted to be less of an anti-pattern.
This also helps self-hosted, which does not yet implement
`usingnamespace`, get closer to being able to build compiler-rt.
2021-08-12 10:48:54 -07:00
Andrew Kelley
6eecc4af99
stage2 llvm backend: implement const inttoptr
2021-08-12 10:48:54 -07:00
Andrew Kelley
a0670e748e
Merge pull request #9166 from joachimschmidt557/stage2
...
stage2 Sema: Add error notes to unresolvable peer types
2021-08-12 13:22:27 -04:00
Jakub Konka
394d287778
Merge pull request #9535 from FnControlOption/128-bit-cmpxchg-test
...
Re-enable 128-bit cmpxchg test
2021-08-12 16:42:37 +02:00
Jakub Konka
f49aa960a9
macho: use ArrayHashMap.popOrNull where applicable
2021-08-12 10:20:57 +02:00
Jakub Konka
f01366e8b3
macho: exclude tentative def before checking for collision
...
when resolving global symbols.
2021-08-12 10:20:57 +02:00
Jakub Konka
35403d41ce
macho: use array hashmaps for quick lookups
...
as containers for unresolved and tentative definitions when resolving
symbols.
2021-08-12 10:20:57 +02:00
Jakub Konka
da57d6df32
macho: simplify symbol management and resolution
...
instead of globally storing unresolved and tentative defs,
store indices to actual symbols in the functions that are responsible
for symbol resolution.
2021-08-12 10:20:57 +02:00
Ryan Liptak
493822ac3b
Update mem.split/mem.tokenize doc comments
...
Follow up to #9531
2021-08-11 21:19:03 -04:00
Jakub Konka
0686954802
Merge pull request #9549 from ziglang/tapi-v3
...
macho: handle TAPI v3 and simplify handling of dependent dynamic libraries
2021-08-11 22:48:03 +02:00
Jakub Konka
5d548cc651
macho: move parsing logic for Object, Archive and Dylib into MachO
...
This way, the functionality is better segregated, and we finally do
not unnecessarily reparse dynamic libraries that were already visited
and parsed.
2021-08-11 19:38:00 +02:00
Jakub Konka
16bb5c05f1
macho: refactor stub parsing in Dylib
2021-08-11 19:38:00 +02:00
Jakub Konka
d95e8bc5f8
macho: simplify versioning logic for TAPI
2021-08-11 19:38:00 +02:00
Jakub Konka
8afe6210e9
macho: add TAPI v3 parser
...
This turns out needed to correctly support version back to macOS
10.14 (Mojave)
2021-08-11 19:38:00 +02:00
Jakub Konka
60a5552d41
Merge pull request #9532 from ziglang/basic-ios-support
...
Add minimal support to Zig toolchain to support building iOS binaries
2021-08-11 19:36:21 +02:00
Jakub Konka
509fe33d10
macho: when targeting simulator, match host dylibs too
...
otherwise, linking may fail as some libc functions are provided by
the host when simulating a different OS such iPhoneOS.
2021-08-10 13:41:10 +02:00