Lines Matching refs:frame
93 #define BACKDOOR_OP_I386(op, frame) \ argument
115 :"a"(frame) \
118 #define BACKDOOR_OP_AMD64(op, frame) \ argument
140 : "a" (frame) \
154 #define BACKDOOR_OP_AARCH64(op, frame) \ argument
168 : "r" (frame), \
175 #define BACKDOOR_OP(op, frame) BACKDOOR_OP_I386(op, frame) argument
177 #define BACKDOOR_OP(op, frame) BACKDOOR_OP_AMD64(op, frame) argument
179 #define BACKDOOR_OP(op, frame) BACKDOOR_OP_AARCH64(op, frame) argument
195 struct vm_backdoor frame; in vmt_hvcall() local
197 memset(&frame, 0, sizeof(frame)); in vmt_hvcall()
198 frame.eax = VM_MAGIC; in vmt_hvcall()
199 frame.ebx = UINT_MAX; in vmt_hvcall()
200 frame.ecx = VM_REG_CMD(0, cmd); in vmt_hvcall()
201 frame.edx = VM_REG_PORT_CMD(0); in vmt_hvcall()
203 BACKDOOR_OP(BACKDOOR_OP_CMD, &frame); in vmt_hvcall()
205 regs[0] = __SHIFTOUT(frame.eax, VM_REG_WORD_MASK); in vmt_hvcall()
206 regs[1] = __SHIFTOUT(frame.ebx, VM_REG_WORD_MASK); in vmt_hvcall()
207 regs[2] = __SHIFTOUT(frame.ecx, VM_REG_WORD_MASK); in vmt_hvcall()
208 regs[3] = __SHIFTOUT(frame.edx, VM_REG_WORD_MASK); in vmt_hvcall()
209 regs[4] = __SHIFTOUT(frame.esi, VM_REG_WORD_MASK); in vmt_hvcall()
210 regs[5] = __SHIFTOUT(frame.edi, VM_REG_WORD_MASK); in vmt_hvcall()