mirror of
https://git.FreeBSD.org/src.git
synced 2024-12-25 11:37:56 +00:00
Rework the detecting of the rdmsr and wrmsr instructions in the v86
monitor so that the codepath is cleaner and easier to maintain in the future.
This commit is contained in:
parent
6843189ab9
commit
52f5035190
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=62229
@ -478,16 +478,16 @@ v86mon.2: cmpb $0xf4,%al # HLT?
|
||||
cmpl $inthlt+0x1,%esi # Is inthlt?
|
||||
jne v86mon.7 # No (ignore)
|
||||
jmp intrtn # Return to user mode
|
||||
v86mon.3: cmpb $0xf,%al # Is
|
||||
jne v86mon.3.1 # this
|
||||
cmpb $0x20,(%esi) # a
|
||||
jne v86mon.3.1 # MOV EAX,CR0
|
||||
cmpb $0xc0,0x1(%esi) # instruction?
|
||||
je v86mov # Yes
|
||||
v86mon.3.1: cmpb $0x30,(%esi) # Is it a WRMSR?
|
||||
v86mon.3: cmpb $0xf,%al # Prefixed instruction?
|
||||
jne v86mon.4 # No
|
||||
cmpb $0x30,(%esi) # Is it a WRMSR?
|
||||
je v86wrmsr # Yes
|
||||
cmpb $0x32,(%esi) # Is it a RDMSR?
|
||||
je v86rdmsr # Yes
|
||||
cmpb $0x20,(%esi) # Is this a
|
||||
jne v86mon.4 # MOV EAX,CR0
|
||||
cmpb $0xc0,0x1(%esi) # instruction?
|
||||
je v86mov # Yes
|
||||
v86mon.4: cmpb $0xfa,%al # CLI?
|
||||
je v86cli # Yes
|
||||
cmpb $0xfb,%al # STI?
|
||||
|
@ -478,16 +478,16 @@ v86mon.2: cmpb $0xf4,%al # HLT?
|
||||
cmpl $inthlt+0x1,%esi # Is inthlt?
|
||||
jne v86mon.7 # No (ignore)
|
||||
jmp intrtn # Return to user mode
|
||||
v86mon.3: cmpb $0xf,%al # Is
|
||||
jne v86mon.3.1 # this
|
||||
cmpb $0x20,(%esi) # a
|
||||
jne v86mon.3.1 # MOV EAX,CR0
|
||||
cmpb $0xc0,0x1(%esi) # instruction?
|
||||
je v86mov # Yes
|
||||
v86mon.3.1: cmpb $0x30,(%esi) # Is it a WRMSR?
|
||||
v86mon.3: cmpb $0xf,%al # Prefixed instruction?
|
||||
jne v86mon.4 # No
|
||||
cmpb $0x30,(%esi) # Is it a WRMSR?
|
||||
je v86wrmsr # Yes
|
||||
cmpb $0x32,(%esi) # Is it a RDMSR?
|
||||
je v86rdmsr # Yes
|
||||
cmpb $0x20,(%esi) # Is this a
|
||||
jne v86mon.4 # MOV EAX,CR0
|
||||
cmpb $0xc0,0x1(%esi) # instruction?
|
||||
je v86mov # Yes
|
||||
v86mon.4: cmpb $0xfa,%al # CLI?
|
||||
je v86cli # Yes
|
||||
cmpb $0xfb,%al # STI?
|
||||
|
Loading…
Reference in New Issue
Block a user