diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2007-10-18 22:39:00 -0700 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2007-10-18 22:39:00 -0700 |
commit | dc2e887f238d48f15364d9937bc71940d3849c0a (patch) | |
tree | 66a15a82e0f159ecda21a03044debd00c8db5b02 /src/arch/x86/isa/microasm.isa | |
parent | 2bbc058c6c5e54c032106f804dd3084ed11f0f09 (diff) | |
download | gem5-dc2e887f238d48f15364d9937bc71940d3849c0a.tar.xz |
X86: Implement the in/out instructions. These will still need support from the TLB and memory system.
--HG--
extra : convert_revision : a9503248ea9efca7e5247e4f2830967f428b8215
Diffstat (limited to 'src/arch/x86/isa/microasm.isa')
-rw-r--r-- | src/arch/x86/isa/microasm.isa | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/arch/x86/isa/microasm.isa b/src/arch/x86/isa/microasm.isa index 50135e30c..0c43d4c13 100644 --- a/src/arch/x86/isa/microasm.isa +++ b/src/arch/x86/isa/microasm.isa @@ -88,8 +88,8 @@ let {{ "regm" : "env.regm", "xmmlm" : "FLOATREG_XMM_LOW(env.regm)", "xmmhm" : "FLOATREG_XMM_HIGH(env.regm)", - "imm" : "IMMEDIATE", - "disp" : "DISPLACEMENT", + "imm" : "adjustedImm", + "disp" : "adjustedDisp", "seg" : "env.seg", "scale" : "env.scale", "index" : "env.index", @@ -135,6 +135,11 @@ let {{ env.dataSize = 8; ''' + def trimImm(width): + return "adjustedImm = adjustedImm & mask(%s);" % width + + assembler.symbols["trimImm"] = trimImm + def labeler(labelStr): return "label_%s" % labelStr |