Changeset View
Changeset View
Standalone View
Standalone View
head/sys/i386/include/asmacros.h
Show First 20 Lines • Show All 212 Lines • ▼ Show 20 Lines | .L\@.1: popl %eax | ||||
.macro KENTER | .macro KENTER | ||||
testl $PSL_VM, TF_EFLAGS(%esp) | testl $PSL_VM, TF_EFLAGS(%esp) | ||||
jz .L\@.1 | jz .L\@.1 | ||||
LOAD_KCR3 | LOAD_KCR3 | ||||
movl PCPU(CURPCB), %eax | movl PCPU(CURPCB), %eax | ||||
testl $PCB_VM86CALL, PCB_FLAGS(%eax) | testl $PCB_VM86CALL, PCB_FLAGS(%eax) | ||||
jnz .L\@.3 | jnz .L\@.3 | ||||
NMOVE_STACKS | NMOVE_STACKS | ||||
movl $handle_ibrs_entry,%edx | |||||
call *%edx | |||||
jmp .L\@.3 | jmp .L\@.3 | ||||
.L\@.1: testb $SEL_RPL_MASK, TF_CS(%esp) | .L\@.1: testb $SEL_RPL_MASK, TF_CS(%esp) | ||||
jz .L\@.3 | jz .L\@.3 | ||||
.L\@.2: MOVE_STACKS | .L\@.2: MOVE_STACKS | ||||
movl $handle_ibrs_entry,%edx | |||||
call *%edx | |||||
.L\@.3: | .L\@.3: | ||||
.endm | .endm | ||||
#endif /* LOCORE */ | #endif /* LOCORE */ | ||||
#ifdef __STDC__ | #ifdef __STDC__ | ||||
#define ELFNOTE(name, type, desctype, descdata...) \ | #define ELFNOTE(name, type, desctype, descdata...) \ | ||||
.pushsection .note.name ; \ | .pushsection .note.name ; \ | ||||
Show All 24 Lines |