1
0
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:
John Baldwin 2000-06-29 01:25:31 +00:00
parent 6843189ab9
commit 52f5035190
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=62229
2 changed files with 14 additions and 14 deletions

View File

@ -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?

View File

@ -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?