Commit Graph

14566 Commits

Author SHA1 Message Date
Jacob Young 23ee39116c cbe: fix struct field location computation 2024-04-08 13:20:13 -04:00
Jacob Young d979df585d cbe: remove threadlocal variables in single threaded mode 2024-04-08 13:20:02 -04:00
Andrew Kelley 355cceebc7 Merge pull request #18920 from castholm/fmtId
`std.zig.fmtId`: conditionally escape primitives/`_` (breaking)
2024-04-07 19:22:35 -07:00
Andrew Kelley e204a6edb8 Merge pull request #18988 from castholm/lazy-build-zig
std.Build: add `lazyImport` (`@import` for lazy dependencies)
2024-04-07 15:43:54 -07:00
Carl Åstholm 278db0ad45 Sema: support coercing ref to anonymous array init to many-pointer 2024-04-07 15:10:49 -07:00
Carl Åstholm 9181ecd951 Sema: fix runtime call of inline fn with comptime-known comptime-only ret type 2024-04-07 15:07:55 +02:00
Carl Åstholm 4c393c7468 Update usages of fmtId/isValidId
`{}` for decls
`{p}` for enum fields
`{p_}` for struct fields and in contexts following a `.`

Elsewhere, `{p}` was used since it's equivalent to the old behavior.
2024-04-07 14:47:11 +02:00
Ian Johnson 129de47a71 Fix first-time package fetches
Closes #19557
Closes #19561

Previously, `build.zig` was not being detected correctly by
`computeHash` for packages where there is a containing root directory.
2024-04-07 09:07:37 +02:00
Andrew Kelley f45ba7d0c1 Merge pull request #19562 from Snektron/spirv-remove-cache
spirv: remove cache
2024-04-06 13:03:22 -07:00
Jacob Young f668c8bfd6 x86_64: fix abi of nested structs 2024-04-06 13:02:55 -07:00
Igor Anić 34bb670bb6 package manager: set executable bit
Based on file content. Detects elf magic header or shebang line.

Executable bit is ignored in hash calculation, as it was before this. So
packages hashes are not changed.

Reference:
https://github.com/ziglang/zig/issues/17463#issuecomment-1984798880

Fixes: 17463

Test is here:
https://github.com/ianic/zig-fetch-test/blob/7c4600d7bb263f9b72fe3d0b70071f42be89e25c/src/main.zig#L307
(if #19500 got accepted I'll move this test to the Fetch.zig)
2024-04-06 13:00:57 -07:00
Jacob Young 4a8121c1ab Sema: fix non-pub usingnamespace in @typeInfo 2024-04-06 12:57:51 -07:00
Jacob Young 4e85536604 Builder: fix encoding big integers in bitcode
Closes #19543
2024-04-06 12:53:09 -07:00
antlilja 637b1d606d LLVM Builder: Emit binary op optional flags for exact and no wrap 2024-04-06 14:57:46 -04:00
Robin Voetter cbf2ee72e3 spirv: fix some recursive pointers edge cases in dedup pass 2024-04-06 13:37:41 +02:00
Robin Voetter 125d3324d9 spirv: add link progression 2024-04-06 13:37:41 +02:00
Robin Voetter 3e388faecd spirv: yeet cache 2024-04-06 13:37:40 +02:00
Robin Voetter ef638502d4 spirv: remove cache usage from assembler 2024-04-06 13:37:40 +02:00
Robin Voetter 97a67762ba spirv: remove cache usage for types 2024-04-06 13:37:39 +02:00
Robin Voetter 188922a544 spirv: remove cache usage for constants 2024-04-06 13:37:39 +02:00
Robin Voetter 42c7e752e1 spirv: id range helper
This allows us to more sanely allocate a continuous
range of result-ids, and avoids a bunch of nasty
casting code in a few places. Its currently not used
very often, but will be useful in the future.
2024-04-06 13:37:37 +02:00
Robin Voetter 3942083806 Merge pull request #18984 from alichraghi/vector
spirv: implement `@divFloor`, `@floor`, `@mod` and `@mulWithOverflow`
2024-04-06 13:37:25 +02:00
Josh Wolfe 3eeb70540d fix number of arguments preallocation in zig jit subcommand
crash repo: `zig std 1 2 3 4 5` (in a debug build)
2024-04-06 04:24:00 -04:00
Ali Chraghi 436f53f55d spirv: implement @mulWithOverflow 2024-04-06 09:01:46 +03:30
Ali Chraghi 9785014938 spirv: OpExtInstImport in assembler 2024-04-06 08:52:38 +03:30
Ali Chraghi 0f75143c62 spirv: implement @divFloor, @floor and @mod 2024-04-06 08:50:02 +03:30
Jakub Konka 23f729aec9 Merge pull request #19260 from mikdusan/macos-zippered
macos: add zippered support
2024-04-05 23:37:51 +02:00
Ali Chraghi 14e3718723 spirv: make behavior tests passing 2024-04-05 00:13:48 +03:30
Igor Anić a60b7af2c1 fetch: fix manifest included paths filtering
Filter should be applied on path where package root folder (if
there is any) is stripped. Manifest is inside package root and has paths
relative to package root not temporary directory root.
2024-04-04 01:59:15 +02:00
Igor Anić 8545cb0147 fetch: use package root detection pipeToFileSystem
Based on:
https://github.com/ziglang/zig/pull/19111#discussion_r1548620985

In pipeToFileSystem we are already iterating over all files in tarball.
Inspecting them there for existence of single root folder saves two
syscalls later.
2024-04-03 21:20:39 +02:00
Igor Anić 363acf4991 fetch: update comments 2024-04-03 21:17:57 +02:00
Igor Anić 1431e34cb9 fetch: remove one openDir in runResource
Based on comment:
https://github.com/ziglang/zig/pull/19111#discussion_r1548640939

computeHash finds all files in temporary directory. There is no
difference on what path are they. When calculating hash normalized_path
must be set relative to package root. That's the place where we strip
root if needed.
2024-04-03 21:01:29 +02:00
Igor Anić 24304a4385 fetch: save syscall, and add comment
From review comments: https://github.com/ziglang/zig/pull/19111
2024-04-03 17:08:41 +02:00
Igor Anić c4261bf562 fetch: find package root only for archives 2024-04-03 17:06:20 +02:00
Igor Anić 15ca0c9471 fix typo 2024-04-03 17:06:20 +02:00
Igor Anić a5a928b966 package manager: don't strip components in tar
Unpack tar without removing leading root folder. Then find package root
in unpacked tmp folder.
2024-04-03 17:06:20 +02:00
Igor Anić bc5076715b fetch: fix failing test
Prior to
[this](https://github.com/ziglang/zig/commit/ef9966c9855dd855afda767f212abec6e5a36307#diff-08c935ef8c633bb630641d44230597f1cff5afb0e736d451e2ba5569fa53d915R805)
commit tar was not a valid extension. After that this one is valid case.
2024-04-03 17:06:20 +02:00
Jacob Young 4794c6a526 Sema: fix crash accessing array of opv types
Closes #19499
2024-04-02 13:45:07 -07:00
Robin Voetter d2be725e4b Merge pull request #19490 from Snektron/spirv-dedup
spirv: deduplication pass
2024-04-01 09:51:04 +02:00
Jacob Young fb192df4f2 cbe: fix uncovered bugs 2024-03-30 20:50:48 -04:00
Jacob Young 7580879e8b x86_64: cleanup comptime mutable memory change 2024-03-30 20:50:48 -04:00
Jacob Young eb723a4070 Update uses of @fieldParentPtr to use RLS 2024-03-30 20:50:48 -04:00
Jacob Young 17673dcd6e AstGen: use RLS to infer the first argument of @fieldParentPtr 2024-03-30 20:50:48 -04:00
Jacob Young e409afb79b Update uses of @fieldParentPtr to pass a pointer type 2024-03-30 20:50:48 -04:00
Jacob Young 9b2345e182 Sema: rework @fieldParentPtr to accept a pointer type
There is no way to know the expected parent pointer attributes (most
notably alignment) from the type of the field pointer, so provide them
in the first argument.
2024-03-30 20:50:48 -04:00
Jacob Young 5a41704f7e cbe: rewrite CType
Closes #14904
2024-03-30 20:50:48 -04:00
Jacob Young 6f10b11658 cbe: fix bugs revealed by an upcoming commit
Closes #18023
2024-03-30 20:50:48 -04:00
Robin Voetter 12350f53bf spirv: clz, ctz for opencl
This instruction seems common in compiler_rt.
2024-03-30 19:47:55 +01:00
Robin Voetter f5ab3c93c9 spirv: handle annotations in deduplication pass 2024-03-30 19:47:55 +01:00
Robin Voetter b4960394ef spirv: avoid copying operands in dedup pass 2024-03-30 19:47:52 +01:00