authorgravatar for kubkon@jakubkonka.comJakub Konka <kubkon@jakubkonka.com> 2023-11-12 13:06:30+01:00
committergravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2023-11-12 18:12:41-05:00
logc6833e6273f5a90059074e6ba5707a516efecb86
tree5bd6c5b8db34613a0459ddda8b3ae63c4fe4cb24
parent575c29e5c4fe3aac955be407155750b92c0f6ea3

x86_64: remove unreachable Elf prong


1 files changed, 17 insertions(+), 27 deletions(-)

src/arch/x86_64/CodeGen.zig+17-27
......@@ -13381,35 +13381,25 @@ fn genSetReg(self: *Self, dst_reg: Register, ty: Type, src_mcv: MCValue) InnerEr
1338113381 },
1338213382 .lea_direct, .lea_got => |sym_index| {
1338313383 const atom_index = try self.owner.getSymbolIndex(self);
13384 if (self.bin_file.cast(link.File.Elf)) |_| {
13385 try self.asmRegisterMemory(.{ ._, .lea }, dst_reg.to64(), .{
13386 .base = .{ .reloc = .{
13384 _ = try self.addInst(.{
13385 .tag = switch (src_mcv) {
13386 .lea_direct => .lea,
13387 .lea_got => .mov,
13388 else => unreachable,
13389 },
13390 .ops = switch (src_mcv) {
13391 .lea_direct => .direct_reloc,
13392 .lea_got => .got_reloc,
13393 else => unreachable,
13394 },
13395 .data = .{ .rx = .{
13396 .r1 = dst_reg.to64(),
13397 .payload = try self.addExtra(bits.Symbol{
1338713398 .atom_index = atom_index,
1338813399 .sym_index = sym_index,
13389 } },
13390 .mod = .{ .rm = .{ .size = .qword } },
13391 });
13392 } else {
13393 _ = try self.addInst(.{
13394 .tag = switch (src_mcv) {
13395 .lea_direct => .lea,
13396 .lea_got => .mov,
13397 else => unreachable,
13398 },
13399 .ops = switch (src_mcv) {
13400 .lea_direct => .direct_reloc,
13401 .lea_got => .got_reloc,
13402 else => unreachable,
13403 },
13404 .data = .{ .rx = .{
13405 .r1 = dst_reg.to64(),
13406 .payload = try self.addExtra(bits.Symbol{
13407 .atom_index = atom_index,
13408 .sym_index = sym_index,
13409 }),
13410 } },
13411 });
13412 }
13400 }),
13401 } },
13402 });
1341313403 },
1341413404 .lea_tlv => |sym_index| {
1341513405 const atom_index = try self.owner.getSymbolIndex(self);