diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2007-06-13 18:06:34 +0000 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2007-06-13 18:06:34 +0000 |
commit | 715efab3b9ca9334f25601c5a46cfa3975157271 (patch) | |
tree | b302569ba990b9405ebbda39fef156e59e9c5ff0 | |
parent | fd45c4a58f5c2fbf77c204c93cc32c88cc98a6a0 (diff) | |
download | gem5-715efab3b9ca9334f25601c5a46cfa3975157271.tar.xz |
Partially implement "POP"
--HG--
extra : convert_revision : ba454579a6a82ce4924102a633e5758fb2a30b2d
-rw-r--r-- | src/arch/x86/isa/decoder/one_byte_opcodes.isa | 2 | ||||
-rw-r--r-- | src/arch/x86/isa/insts/data_transfer/stack_operations.py | 7 |
2 files changed, 7 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 c29133a5c..72fbf2896 100644 --- a/src/arch/x86/isa/decoder/one_byte_opcodes.isa +++ b/src/arch/x86/isa/decoder/one_byte_opcodes.isa @@ -179,7 +179,7 @@ 0x3: pop_rBX(); 0x4: pop_rSP(); 0x5: pop_rBP(); - 0x6: pop_rSI(); + 0x6: Inst::POP(rSI); 0x7: pop_rDI(); } 0x0C: decode OPCODE_OP_BOTTOM3 { diff --git a/src/arch/x86/isa/insts/data_transfer/stack_operations.py b/src/arch/x86/isa/insts/data_transfer/stack_operations.py index bcde13982..3223d9b0f 100644 --- a/src/arch/x86/isa/insts/data_transfer/stack_operations.py +++ b/src/arch/x86/isa/insts/data_transfer/stack_operations.py @@ -53,7 +53,12 @@ # # Authors: Gabe Black -microcode = "" +microcode = ''' +def macroop POP { + # There needs to be a load here to actually "pop" the data + addi "INTREG_RSP", "INTREG_RSP", "env.dataSize" +}; +''' #let {{ # class POP(Inst): # "GenFault ${new UnimpInstFault}" |