summaryrefslogtreecommitdiff
path: root/src/arch/x86/isa/decoder/one_byte_opcodes.isa
diff options
context:
space:
mode:
authorGabe Black <gblack@eecs.umich.edu>2007-07-20 17:02:39 -0700
committerGabe Black <gblack@eecs.umich.edu>2007-07-20 17:02:39 -0700
commitc3669b892548ed3e1e8f4016f1e18202c5e7f484 (patch)
treeedd13ce8500df1846dbc179b7d3d4fd36a8a6e0c /src/arch/x86/isa/decoder/one_byte_opcodes.isa
parent231cc3effb193c27ae10009444c5ee7cf2509a06 (diff)
downloadgem5-c3669b892548ed3e1e8f4016f1e18202c5e7f484.tar.xz
Implement the rest of the conditional jump instructions and hook them into the decoder.
--HG-- extra : convert_revision : 8d1d6abce29371def560e1c3f31dabb4de01366f
Diffstat (limited to 'src/arch/x86/isa/decoder/one_byte_opcodes.isa')
-rw-r--r--src/arch/x86/isa/decoder/one_byte_opcodes.isa40
1 files changed, 21 insertions, 19 deletions
diff --git a/src/arch/x86/isa/decoder/one_byte_opcodes.isa b/src/arch/x86/isa/decoder/one_byte_opcodes.isa
index 42404ab91..d1ef8d48e 100644
--- a/src/arch/x86/isa/decoder/one_byte_opcodes.isa
+++ b/src/arch/x86/isa/decoder/one_byte_opcodes.isa
@@ -214,25 +214,27 @@
0x6: outs_Dx_Xb();
0x7: outs_Dx_Xz();
}
- 0x0E: decode OPCODE_OP_BOTTOM3 {
- 0x0: jo_Jb();
- 0x1: jno_Jb();
- 0x2: jb_Jb();
- 0x3: Inst::JNB(Jb);
- 0x4: Inst::JZ(Jb);
- 0x5: Inst::JNZ(Jb);
- 0x6: Inst::JBE(Jb);
- 0x7: Inst::JNBE(Jb);
- }
- 0x0F: decode OPCODE_OP_BOTTOM3 {
- 0x0: js_Jb();
- 0x1: jns_Jb();
- 0x2: jp_Jb();
- 0x3: jnp_Jb();
- 0x4: jl_Jb();
- 0x5: jnl_Jb();
- 0x6: jle_Jb();
- 0x7: Inst::JNLE(Jb);
+ format Inst {
+ 0x0E: decode OPCODE_OP_BOTTOM3 {
+ 0x0: JO(Jb);
+ 0x1: JNO(Jb);
+ 0x2: JB(Jb);
+ 0x3: JNB(Jb);
+ 0x4: JZ(Jb);
+ 0x5: JNZ(Jb);
+ 0x6: JBE(Jb);
+ 0x7: JNBE(Jb);
+ }
+ 0x0F: decode OPCODE_OP_BOTTOM3 {
+ 0x0: JS(Jb);
+ 0x1: JNS(Jb);
+ 0x2: JP(Jb);
+ 0x3: JNP(Jb);
+ 0x4: JL(Jb);
+ 0x5: JNL(Jb);
+ 0x6: JLE(Jb);
+ 0x7: JNLE(Jb);
+ }
}
0x10: decode OPCODE_OP_BOTTOM3 {
//0x0: group1_Eb_Ib();