diff options
author | Gabe Black <gblack@eecs.umich.edu> | 2010-12-09 14:45:17 -0800 |
---|---|---|
committer | Gabe Black <gblack@eecs.umich.edu> | 2010-12-09 14:45:17 -0800 |
commit | 2ff3e6b399796a182b3c9cb68f021d1f533356e4 (patch) | |
tree | 157f0930a9047292cf0d0a2e64de8425b23559ed /src/arch/arm/isa/insts/data.isa | |
parent | 24c5b5925d0bc724a9c6f3f4582def33e113ccf0 (diff) | |
download | gem5-2ff3e6b399796a182b3c9cb68f021d1f533356e4.tar.xz |
ARM: Take advantage of new PCState syntax.
Diffstat (limited to 'src/arch/arm/isa/insts/data.isa')
-rw-r--r-- | src/arch/arm/isa/insts/data.isa | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/src/arch/arm/isa/insts/data.isa b/src/arch/arm/isa/insts/data.isa index 4d368e181..26b6bfc92 100644 --- a/src/arch/arm/isa/insts/data.isa +++ b/src/arch/arm/isa/insts/data.isa @@ -239,10 +239,8 @@ let {{ cpsrWriteByInstr(Cpsr | CondCodes, Spsr, 0xF, true, sctlr.nmfi); Cpsr = ~CondCodesMask & newCpsr; CondCodes = CondCodesMask & newCpsr; - ArmISA::PCState pc = PCS; - pc.nextThumb(((CPSR)newCpsr).t); - pc.nextJazelle(((CPSR)newCpsr).j); - PCS = pc; + NextThumb = ((CPSR)newCpsr).t; + NextJazelle = ((CPSR)newCpsr).j; ''' buildImmDataInst(mnem + 's', code, flagType, suffix = "ImmPclr", buildCc = False, @@ -257,8 +255,7 @@ let {{ buildDataInst("rsb", "Dest = resTemp = secondOp - Op1;", "rsb") buildDataInst("add", "Dest = resTemp = Op1 + secondOp;", "add") buildImmDataInst("adr", ''' - ArmISA::PCState pc = PCS; - Dest = resTemp = (pc.instPC() & ~0x3) + + Dest = resTemp = (PC & ~0x3) + (op1 ? secondOp : -secondOp); ''') buildDataInst("adc", "Dest = resTemp = Op1 + secondOp + %s;" % oldC, "add") |