xxxbxxx
xxxbxxx
bisected to 0d4b6ac7417d1094ac972981b0241444ce2380ba (when LTO was enabled by default) (and, indeed, compiling with "-fno-lto" links successfully.)
moreover: removing `-OPT:lldlto=3 ` from the linker command line `lld-link -ERRORLIMIT:0 -NOLOGO -DEBUG -OPT:lldlto=3 -STACK:16777216 -MACHINE:X64 [...]` still fails. But if I do: - `zig build-exe main.zig test.c -lc -target...
little test with master, (after https://github.com/ziglang/zig/pull/12631) ```zig pub fn main() !void { } ``` `zig build-exe repro.zig -target x86_64-windows-gnu -flto` -> ``` LLD Link... lld-link: error: undefined symbol: _tls_index >>>...
mmm interresting. looks like reverting the change does indeed restore the perf. ```diff --- a/src/codegen/llvm.zig +++ b/src/codegen/llvm.zig @@ -10528,7 +10528,8 @@ pub const FuncGen = struct { if (isByRef(elem_ty, mod))...
I've tried to poke at it a little bit, but no idea how to fix this. Short of doing some kind of range propagation pass or something, I'm not quite...
> I'm also confused as to why #17391 is problematic if its supposed to only be extending a change that didn't cause any regression to "optional and unions", and my...
related: https://github.com/ziglang/zig/pull/18137
made a first attempt at this: https://github.com/ziglang/zig/pull/14882
This workaround seems to "work-for-me": redirect_fnctl64_hack.zig: ```zig // work around glibc headers >= 2.28 no linking against older runtime library // more info: https://microeducate.tech/how-to-force-linkage-to-older-libc-fcntl-instead-of-fcntl64/ extern fn fcntl() callconv(.Naked) i32; pub...
The idea of this change is to assume that if there is a local variable in it's own alloca, then the padding bits are clean. Now, * I don't know...