x86_64: implement inline asm GOT reference for PIC targets

This commit is contained in:
Jacob Young 2023-10-20 03:38:27 -04:00
parent 8f69e977f1
commit f7482a5c95

View File

@ -11315,6 +11315,10 @@ fn airAsm(self: *Self, inst: Air.Inst.Index) !void {
) }
else
return self.fail("invalid modifier: '{s}'", .{modifier}),
.lea_got => |sym_index| if (mem.eql(u8, modifier, "P"))
.{ .reg = try self.copyToTmpRegister(Type.usize, .{ .lea_got = sym_index }) }
else
return self.fail("invalid modifier: '{s}'", .{modifier}),
else => return self.fail("invalid constraint: '{s}'", .{op_str}),
};
} else if (mem.startsWith(u8, op_str, "$")) {