diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2007-07-17 16:50:13 -0700 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2007-07-17 16:50:13 -0700 |
commit | 62ffc71faba7f2cf05ab7e3fc0624a2c12bf6486 (patch) | |
tree | fcbb3c4fe2ef16a72616e28658c532ea9963e29d | |
parent | d77d4c04b702fd8af1d268893bd71e7245f9c542 (diff) | |
download | gem5-62ffc71faba7f2cf05ab7e3fc0624a2c12bf6486.tar.xz |
Use limm to set up immediate value for subtract instruction.
--HG--
extra : convert_revision : f94e391e36a47c2f5222f30d7e28f48f7875db58
-rw-r--r-- | src/arch/x86/isa/insts/arithmetic/add_and_subtract.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/arch/x86/isa/insts/arithmetic/add_and_subtract.py b/src/arch/x86/isa/insts/arithmetic/add_and_subtract.py index 809b9ac7c..fbfe4be7e 100644 --- a/src/arch/x86/isa/insts/arithmetic/add_and_subtract.py +++ b/src/arch/x86/isa/insts/arithmetic/add_and_subtract.py @@ -56,21 +56,24 @@ microcode = ''' def macroop SUB_R_I { - subi reg, reg, imm + limm t1, imm + sub reg, reg, t1 }; def macroop SUB_M_I { + limm t2, imm ld t1, ds, [scale, index, base], disp - subi t1, t1, imm + sub t1, t1, t2 st t1, ds, [scale, index, base], disp }; def macroop SUB_P_I { rdip t7 + limm t2, imm ld t1, ds, [scale, index, base], disp - subi t1, t1, imm + sub t1, t1, t2 st t1, ds, [scale, index, base], disp }; ''' |