From 9ffc5e2ae64017cec061b112f4dc5e5846f44ed7 Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Wed, 2 Jun 2010 12:58:07 -0500 Subject: [PATCH] ARM: Implement the pkh instruction. --- src/arch/arm/isa/insts/data.isa | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/arch/arm/isa/insts/data.isa b/src/arch/arm/isa/insts/data.isa index ee291a1d5..474bd8c4e 100644 --- a/src/arch/arm/isa/insts/data.isa +++ b/src/arch/arm/isa/insts/data.isa @@ -792,4 +792,21 @@ let {{ replaceBits(resTemp, 31, 16, midRes); Dest = resTemp; ''', flagType="none", buildCc=False) + + buildRegDataInst("pkhbt", ''' + uint32_t resTemp = 0; + uint16_t arg1Low = bits(Op1, 15, 0); + uint16_t arg2High = bits(secondOp, 31, 16); + replaceBits(resTemp, 15, 0, arg1Low); + replaceBits(resTemp, 31, 16, arg2High); + Dest = resTemp; + ''', flagType="none", buildCc=False) + buildRegDataInst("pkhtb", ''' + uint32_t resTemp = 0; + uint16_t arg1High = bits(Op1, 31, 16); + uint16_t arg2Low = bits(secondOp, 15, 0); + replaceBits(resTemp, 15, 0, arg2Low); + replaceBits(resTemp, 31, 16, arg1High); + Dest = resTemp; + ''', flagType="none", buildCc=False) }}; -- 2.30.2