@@ -30,32 +30,32 @@ __attribute__((naked)) void DoZeroRegSyscallFault(CPUState* State) {
3030 push r15
3131
3232 // Load flags
33- push qword [rdi + %[FlagsOffset]]
33+ push qword ptr [rdi + %[FlagsOffset]]
3434 popfq
3535
3636 // Do getpid syscall.
3737 // Overwrites some arguments.
3838 // Syscall num
39- mov rax, qword [rdi + %[RAXOffset]]
39+ mov rax, qword ptr [rdi + %[RAXOffset]]
4040
4141 // Load remaining registers that we can
42- mov rbx, qword [rdi + %[RBXOffset]];
43- mov rcx, qword [rdi + %[RCXOffset]];
44- mov rdx, qword [rdi + %[RDXOffset]]
45- mov rsi, qword [rdi + %[RSIOffset]]
46- mov rbp, qword [rdi + %[RBPOffset]];
42+ mov rbx, qword ptr [rdi + %[RBXOffset]];
43+ mov rcx, qword ptr [rdi + %[RCXOffset]];
44+ mov rdx, qword ptr [rdi + %[RDXOffset]]
45+ mov rsi, qword ptr [rdi + %[RSIOffset]]
46+ mov rbp, qword ptr [rdi + %[RBPOffset]];
4747 // Can't load RSP
48- mov r8, qword [rdi + %[R8Offset]]
49- mov r9, qword [rdi + %[R9Offset]];
50- mov r10, qword [rdi + %[R10Offset]]
51- mov r11, qword [rdi + %[R11Offset]];
52- mov r12, qword [rdi + %[R12Offset]];
53- mov r13, qword [rdi + %[R13Offset]];
54- mov r14, qword [rdi + %[R14Offset]];
55- mov r15, qword [rdi + %[R15Offset]];
48+ mov r8, qword ptr [rdi + %[R8Offset]]
49+ mov r9, qword ptr [rdi + %[R9Offset]];
50+ mov r10, qword ptr [rdi + %[R10Offset]]
51+ mov r11, qword ptr [rdi + %[R11Offset]];
52+ mov r12, qword ptr [rdi + %[R12Offset]];
53+ mov r13, qword ptr [rdi + %[R13Offset]];
54+ mov r14, qword ptr [rdi + %[R14Offset]];
55+ mov r15, qword ptr [rdi + %[R15Offset]];
5656
5757 // Overwrite RDI last.
58- mov rdi, qword [rdi + %[RDIOffset]];
58+ mov rdi, qword ptr [rdi + %[RDIOffset]];
5959
6060 syscall;
6161
@@ -66,15 +66,14 @@ __attribute__((naked)) void DoZeroRegSyscallFault(CPUState* State) {
6666 // We long jump from the signal handler, so this won't continue.
6767 )"
6868 :
69- // integers are offset by 8 for some reason.
70- : [RAXOffset] " i" (offsetof (CPUState, Registers[REG_RAX]) - 8 ), [RDXOffset] " i" (offsetof (CPUState, Registers[REG_RDX]) - 8 ),
71- [R10Offset] " i" (offsetof (CPUState, Registers[REG_R10]) - 8 ), [R8Offset] " i" (offsetof (CPUState, Registers[REG_R8]) - 8 ),
72- [RSIOffset] " i" (offsetof (CPUState, Registers[REG_RSI]) - 8 ), [RDIOffset] " i" (offsetof (CPUState, Registers[REG_RDI]) - 8 ),
73- [RBXOffset] " i" (offsetof (CPUState, Registers[REG_RBX]) - 8 ), [RCXOffset] " i" (offsetof (CPUState, Registers[REG_RCX]) - 8 ),
74- [RBPOffset] " i" (offsetof (CPUState, Registers[REG_RBP]) - 8 ), [R9Offset] " i" (offsetof (CPUState, Registers[REG_R9]) - 8 ),
75- [R11Offset] " i" (offsetof (CPUState, Registers[REG_R11]) - 8 ), [R12Offset] " i" (offsetof (CPUState, Registers[REG_R12]) - 8 ),
76- [R13Offset] " i" (offsetof (CPUState, Registers[REG_R13]) - 8 ), [R14Offset] " i" (offsetof (CPUState, Registers[REG_R14]) - 8 ),
77- [R15Offset] " i" (offsetof (CPUState, Registers[REG_R15]) - 8 ), [FlagsOffset] " i" (offsetof (CPUState, eflags) - 8 )
69+ : [RAXOffset] " i" (offsetof (CPUState, Registers[REG_RAX])), [RDXOffset] " i" (offsetof (CPUState, Registers[REG_RDX])),
70+ [R10Offset] " i" (offsetof (CPUState, Registers[REG_R10])), [R8Offset] " i" (offsetof (CPUState, Registers[REG_R8])),
71+ [RSIOffset] " i" (offsetof (CPUState, Registers[REG_RSI])), [RDIOffset] " i" (offsetof (CPUState, Registers[REG_RDI])),
72+ [RBXOffset] " i" (offsetof (CPUState, Registers[REG_RBX])), [RCXOffset] " i" (offsetof (CPUState, Registers[REG_RCX])),
73+ [RBPOffset] " i" (offsetof (CPUState, Registers[REG_RBP])), [R9Offset] " i" (offsetof (CPUState, Registers[REG_R9])),
74+ [R11Offset] " i" (offsetof (CPUState, Registers[REG_R11])), [R12Offset] " i" (offsetof (CPUState, Registers[REG_R12])),
75+ [R13Offset] " i" (offsetof (CPUState, Registers[REG_R13])), [R14Offset] " i" (offsetof (CPUState, Registers[REG_R14])),
76+ [R15Offset] " i" (offsetof (CPUState, Registers[REG_R15])), [FlagsOffset] " i" (offsetof (CPUState, eflags))
7877
7978 : " memory" );
8079}
0 commit comments