stage2: make sure to emit the ZIR instructions of exported functions
Previously the emitted ZIR code would not have the ZIR instructions of the exported functions.master
parent
5b6cbd2e7c
commit
ac85e1f2c8
|
@ -1952,10 +1952,9 @@ const EmitZIR = struct {
|
|||
};
|
||||
_ = try self.emitUnnamedDecl(&export_inst.base);
|
||||
}
|
||||
} else {
|
||||
const new_decl = try self.emitTypedValue(ir_decl.src(), ir_decl.typed_value.most_recent.typed_value);
|
||||
new_decl.name = try self.arena.allocator.dupe(u8, mem.spanZ(ir_decl.name));
|
||||
}
|
||||
const new_decl = try self.emitTypedValue(ir_decl.src(), ir_decl.typed_value.most_recent.typed_value);
|
||||
new_decl.name = try self.arena.allocator.dupe(u8, mem.spanZ(ir_decl.name));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -26,8 +26,9 @@ pub fn addCases(ctx: *TestContext) !void {
|
|||
\\@9__anon_0 = str("entry")
|
||||
\\@unnamed$4 = str("entry")
|
||||
\\@unnamed$5 = export(@unnamed$4, "entry")
|
||||
\\@unnamed$6 = fntype([], @void, cc=C)
|
||||
\\@entry = fn(@unnamed$6, {
|
||||
\\@11 = primitive(void_value)
|
||||
\\@unnamed$7 = fntype([], @void, cc=C)
|
||||
\\@entry = fn(@unnamed$7, {
|
||||
\\ %0 = returnvoid() ; deaths=0b1000000000000000
|
||||
\\})
|
||||
\\
|
||||
|
@ -83,6 +84,7 @@ pub fn addCases(ctx: *TestContext) !void {
|
|||
\\@9__anon_0 = str("entry")
|
||||
\\@unnamed$11 = str("entry")
|
||||
\\@unnamed$12 = export(@unnamed$11, "entry")
|
||||
\\@11 = primitive(void_value)
|
||||
\\
|
||||
);
|
||||
|
||||
|
@ -116,18 +118,19 @@ pub fn addCases(ctx: *TestContext) !void {
|
|||
\\@9__anon_0 = str("entry")
|
||||
\\@unnamed$4 = str("entry")
|
||||
\\@unnamed$5 = export(@unnamed$4, "entry")
|
||||
\\@unnamed$6 = fntype([], @void, cc=C)
|
||||
\\@entry = fn(@unnamed$6, {
|
||||
\\@11 = primitive(void_value)
|
||||
\\@unnamed$7 = fntype([], @void, cc=C)
|
||||
\\@entry = fn(@unnamed$7, {
|
||||
\\ %0 = call(@a, [], modifier=auto) ; deaths=0b1000000000000001
|
||||
\\ %1 = returnvoid() ; deaths=0b1000000000000000
|
||||
\\})
|
||||
\\@unnamed$8 = fntype([], @void, cc=C)
|
||||
\\@a = fn(@unnamed$8, {
|
||||
\\@unnamed$9 = fntype([], @void, cc=C)
|
||||
\\@a = fn(@unnamed$9, {
|
||||
\\ %0 = call(@b, [], modifier=auto) ; deaths=0b1000000000000001
|
||||
\\ %1 = returnvoid() ; deaths=0b1000000000000000
|
||||
\\})
|
||||
\\@unnamed$10 = fntype([], @void, cc=C)
|
||||
\\@b = fn(@unnamed$10, {
|
||||
\\@unnamed$11 = fntype([], @void, cc=C)
|
||||
\\@b = fn(@unnamed$11, {
|
||||
\\ %0 = call(@a, [], modifier=auto) ; deaths=0b1000000000000001
|
||||
\\ %1 = returnvoid() ; deaths=0b1000000000000000
|
||||
\\})
|
||||
|
@ -192,8 +195,9 @@ pub fn addCases(ctx: *TestContext) !void {
|
|||
\\@9__anon_2 = str("entry")
|
||||
\\@unnamed$4 = str("entry")
|
||||
\\@unnamed$5 = export(@unnamed$4, "entry")
|
||||
\\@unnamed$6 = fntype([], @void, cc=C)
|
||||
\\@entry = fn(@unnamed$6, {
|
||||
\\@11 = primitive(void_value)
|
||||
\\@unnamed$7 = fntype([], @void, cc=C)
|
||||
\\@entry = fn(@unnamed$7, {
|
||||
\\ %0 = returnvoid() ; deaths=0b1000000000000000
|
||||
\\})
|
||||
\\
|
||||
|
|
Loading…
Reference in New Issue