| ... | @@ -389,14 +389,14 @@ fn emit(lower: *Lower, prefix: Prefix, mnemonic: Mnemonic, ops: []const Operand) | ... | @@ -389,14 +389,14 @@ fn emit(lower: *Lower, prefix: Prefix, mnemonic: Mnemonic, ops: []const Operand) |
| 389 | // Since we are linking statically, we emit LE model directly. | 389 | // Since we are linking statically, we emit LE model directly. |
| 390 | lower.result_insts[lower.result_insts_len] = | 390 | lower.result_insts[lower.result_insts_len] = |
| 391 | try Instruction.new(.none, .mov, &[_]Operand{ | 391 | try Instruction.new(.none, .mov, &[_]Operand{ |
| 392 | .{ .reg = ops[0].reg.to64() }, | 392 | .{ .reg = .rax }, |
| 393 | .{ .mem = Memory.sib(.qword, .{ .base = .{ .reg = .fs } }) }, | 393 | .{ .mem = Memory.sib(.qword, .{ .base = .{ .reg = .fs } }) }, |
| 394 | }); | 394 | }); |
| 395 | lower.result_insts_len += 1; | 395 | lower.result_insts_len += 1; |
| 396 | _ = lower.reloc(.{ .linker_reloc = sym }); | 396 | _ = lower.reloc(.{ .linker_reloc = sym }); |
| 397 | emit_mnemonic = .lea; | 397 | emit_mnemonic = .lea; |
| 398 | break :op .{ .mem = Memory.sib(mem_op.sib.ptr_size, .{ | 398 | break :op .{ .mem = Memory.sib(mem_op.sib.ptr_size, .{ |
| 399 | .base = .{ .reg = ops[0].reg.to64() }, | 399 | .base = .{ .reg = .rax }, |
| 400 | .disp = std.math.minInt(i32), | 400 | .disp = std.math.minInt(i32), |
| 401 | }) }; | 401 | }) }; |
| 402 | } | 402 | } |