-
-
Notifications
You must be signed in to change notification settings - Fork 3k
Closed
Labels
backend-llvmThe LLVM backend outputs an LLVM IR Module.The LLVM backend outputs an LLVM IR Module.bugObserved behavior contradicts documented or intended behaviorObserved behavior contradicts documented or intended behaviorregressionIt worked in a previous version of Zig, but stopped working.It worked in a previous version of Zig, but stopped working.
Milestone
Description
Zig Version
0.12.0-dev.3533+e5d900268
Steps to Reproduce and Observed Behavior
zig build -Dtarget=x86_64-uefi -Dsingle-threaded --zig-lib-dir lib
install
└─ install zig
└─ zig build-exe zig Debug x86_64-uefi failure
error: thread 3877234 panic: attempt to unwrap error: TargetTooSmall
/home/ross/MidstallSoftware/contrib/zig/lib/std/math/big/int.zig:2170:21: 0x1bec69c in to__anon_65404 (zig)
return error.TargetTooSmall;
^
/home/ross/MidstallSoftware/contrib/zig/src/codegen/llvm/Builder.zig:14362:62: 0x192943d in toBitcode (zig)
const val = bigint.to(i64) catch unreachable;
^
/home/ross/MidstallSoftware/contrib/zig/src/codegen/llvm.zig:1206:55: 0x191a172 in emit (zig)
const bitcode = try self.builder.toBitcode(self.gpa);
^
/home/ross/MidstallSoftware/contrib/zig/src/Compilation.zig:2578:25: 0x1933c23 in emitLlvmObject (zig)
try llvm_object.emit(.{
^
/home/ross/MidstallSoftware/contrib/zig/src/link.zig:969:40: 0x2275898 in emitLlvmObject (zig)
return base.comp.emitLlvmObject(arena, base.emit, .{
^
/home/ross/MidstallSoftware/contrib/zig/src/link/Coff.zig:1727:37: 0x1efbc3e in flushModule (zig)
try self.base.emitLlvmObject(arena, llvm_object, prog_node);
^
/home/ross/MidstallSoftware/contrib/zig/src/link/Coff/lld.zig:33:29: 0x1ef32fd in linkWithLLD (zig)
try self.flushModule(arena, prog_node);
^
/home/ross/MidstallSoftware/contrib/zig/src/link/Coff.zig:1711:31: 0x1bd3d39 in flush (zig)
return lld.linkWithLLD(self, arena, prog_node);
^
/home/ross/MidstallSoftware/contrib/zig/src/link.zig:566:77: 0x19349f2 in flush (zig)
return @as(*tag.Type(), @fieldParentPtr("base", base)).flush(arena, prog_node);
^
/home/ross/MidstallSoftware/contrib/zig/src/Compilation.zig:2262:17: 0x193412f in flush (zig)
lf.flush(arena, prog_node) catch |err| switch (err) {
^
/home/ross/MidstallSoftware/contrib/zig/src/Compilation.zig:2236:22: 0x19379ae in update (zig)
try flush(comp, arena, main_progress_node);
^
/home/ross/MidstallSoftware/contrib/zig/src/main.zig:4105:36: 0x19b175c in serve (zig)
try comp.update(main_progress_node);
^
/home/ross/MidstallSoftware/contrib/zig/src/main.zig:3371:22: 0x19cffc6 in buildOutputType (zig)
try serve(
^
/home/ross/MidstallSoftware/contrib/zig/src/main.zig:260:31: 0x1818da1 in mainArgs (zig)
return buildOutputType(gpa, arena, args, .{ .build = .Exe });
^
/home/ross/MidstallSoftware/contrib/zig/src/main.zig:206:20: 0x1815d45 in main (zig)
return mainArgs(gpa, arena, args);
^
/home/ross/MidstallSoftware/contrib/zig/lib/std/start.zig:511:37: 0x18157de in main (zig)
std.os.argv = @as([*][*:0]u8, @ptrCast(c_argv))[0..@as(usize, @intCast(c_argc))];
^
???:?:?: 0x7fffeb3e9fcd in ??? (libc.so.6)
Unwind information for `libc.so.6:0x7fffeb3e9fcd` was not available, trace may be incomplete
error: the following command terminated unexpectedly:
/home/ross/MidstallSoftware/contrib/zig/build/stage3/bin/zig build-exe --stack 33554432 -fsingle-threaded -fno-sanitize-thread -ODebug -target x86_64-uefi -mcpu baseline --dep aro --dep aro_translate_c --dep build_options -Mroot=/home/ross/MidstallSoftware/contrib/zig/src/main.zig -Maro=/home/ross/MidstallSoftware/contrib/zig/lib/compiler/aro/aro.zig --dep aro -Maro_translate_c=/home/ross/MidstallSoftware/contrib/zig/lib/compiler/aro_translate_c.zig -Mbuild_options=/home/ross/MidstallSoftware/contrib/zig/zig-cache/c/04b7f29791239ad4d8029035fad3b677/options.zig --cache-dir /home/ross/MidstallSoftware/contrib/zig/zig-cache --global-cache-dir /home/ross/.cache/zig --name zig --zig-lib-dir /home/ross/MidstallSoftware/contrib/zig/lib --listen=
Was discovered in a PR but worked before it was rebased, cannot test on master as PR implements vital stdlib features needed.
Expected Behavior
Regression shouldn't occur.
Metadata
Metadata
Assignees
Labels
backend-llvmThe LLVM backend outputs an LLVM IR Module.The LLVM backend outputs an LLVM IR Module.bugObserved behavior contradicts documented or intended behaviorObserved behavior contradicts documented or intended behaviorregressionIt worked in a previous version of Zig, but stopped working.It worked in a previous version of Zig, but stopped working.