X86: Implement and hook up STI and CLI instructions.
This commit is contained in:
parent
da20c0ec54
commit
31d40ad7c2
2 changed files with 17 additions and 9 deletions
|
@ -553,8 +553,8 @@
|
||||||
0x1F: decode OPCODE_OP_BOTTOM3 {
|
0x1F: decode OPCODE_OP_BOTTOM3 {
|
||||||
0x0: CLC();
|
0x0: CLC();
|
||||||
0x1: STC();
|
0x1: STC();
|
||||||
0x2: WarnUnimpl::cli();
|
0x2: CLI();
|
||||||
0x3: WarnUnimpl::sti();
|
0x3: STI();
|
||||||
0x4: CLD();
|
0x4: CLD();
|
||||||
0x5: STD();
|
0x5: STD();
|
||||||
//0x6: group4();
|
//0x6: group4();
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Copyright (c) 2007 The Hewlett-Packard Development Company
|
# Copyright (c) 2007-2008 The Hewlett-Packard Development Company
|
||||||
# All rights reserved.
|
# All rights reserved.
|
||||||
#
|
#
|
||||||
# Redistribution and use of this software in source and binary forms,
|
# Redistribution and use of this software in source and binary forms,
|
||||||
|
@ -84,10 +84,18 @@ def macroop CMC {
|
||||||
ruflags t1
|
ruflags t1
|
||||||
wruflagsi t1, "CFBit"
|
wruflagsi t1, "CFBit"
|
||||||
};
|
};
|
||||||
|
|
||||||
|
def macroop STI {
|
||||||
|
rflags t1
|
||||||
|
limm t2, "IFBit"
|
||||||
|
or t1, t1, t2
|
||||||
|
wrflags t1, t0
|
||||||
|
};
|
||||||
|
|
||||||
|
def macroop CLI {
|
||||||
|
rflags t1
|
||||||
|
limm t2, "~IFBit"
|
||||||
|
and t1, t1, t2
|
||||||
|
wrflags t1, t0
|
||||||
|
};
|
||||||
'''
|
'''
|
||||||
#let {{
|
|
||||||
# class CLI(Inst):
|
|
||||||
# "GenFault ${new UnimpInstFault}"
|
|
||||||
# class STI(Inst):
|
|
||||||
# "GenFault ${new UnimpInstFault}"
|
|
||||||
#}};
|
|
||||||
|
|
Loading…
Reference in a new issue