summaryrefslogtreecommitdiff
path: root/src/arch/x86/isa/decoder/one_byte_opcodes.isa
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2008-06-12 00:53:01 -0400
committerGabe Black <gblack@eecs.umich.edu>2008-06-12 00:53:01 -0400
commit8d2416c6e9ec56dc2addd594eb7f7cab0d58b951 (patch)
tree1525e3f4a9568ee8ea285cd82ec3ba6ccaf4e9cf /src/arch/x86/isa/decoder/one_byte_opcodes.isa
parent66f54a6037873420dbc3bc2c91723225538feddb (diff)
downloadgem5-8d2416c6e9ec56dc2addd594eb7f7cab0d58b951.tar.xz
X86: Implement a partial, sort of correct version of the protected mode variant of iret.
Diffstat (limited to 'src/arch/x86/isa/decoder/one_byte_opcodes.isa')
-rw-r--r--src/arch/x86/isa/decoder/one_byte_opcodes.isa8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/arch/x86/isa/decoder/one_byte_opcodes.isa b/src/arch/x86/isa/decoder/one_byte_opcodes.isa
index 332ae1641..8729f417d 100644
--- a/src/arch/x86/isa/decoder/one_byte_opcodes.isa
+++ b/src/arch/x86/isa/decoder/one_byte_opcodes.isa
@@ -1,4 +1,4 @@
-// Copyright (c) 2007 The Hewlett-Packard Development Company
+// Copyright (c) 2007-2008 The Hewlett-Packard Development Company
// All rights reserved.
//
// Redistribution and use of this software in source and binary forms,
@@ -423,7 +423,11 @@
0x0: Inst::UD2();
default: into();
}
- 0x7: iret();
+ 0x7: decode MODE_SUBMODE {
+ 0x4: Inst::IRET_REAL();
+ 0x3: Inst::IRET_VIRT();
+ default: Inst::IRET_PROT();
+ }
}
}
0x1A: decode OPCODE_OP_BOTTOM3 {