From d744525273ee4e30c68174afbe3f4c3630956ca8 Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Sun, 21 Jun 2009 22:51:13 -0700 Subject: ARM: Simplify some utility functions. --- src/arch/arm/insts/static_inst.hh | 42 +++++++++++---------------------------- 1 file changed, 12 insertions(+), 30 deletions(-) (limited to 'src/arch/arm/insts/static_inst.hh') diff --git a/src/arch/arm/insts/static_inst.hh b/src/arch/arm/insts/static_inst.hh index 9ee166ecb..6321f0de9 100644 --- a/src/arch/arm/insts/static_inst.hh +++ b/src/arch/arm/insts/static_inst.hh @@ -37,39 +37,21 @@ namespace ArmISA class ArmStaticInst : public StaticInst { protected: - // Shift Rm by an immediate value - int32_t - shift_rm_imm(uint32_t base, uint32_t shamt, - uint32_t type, uint32_t cfval) const; + int32_t shift_rm_imm(uint32_t base, uint32_t shamt, + uint32_t type, uint32_t cfval) const; + int32_t shift_rm_rs(uint32_t base, uint32_t shamt, + uint32_t type, uint32_t cfval) const; - // Shift Rm by Rs - int32_t - shift_rm_rs(uint32_t base, uint32_t shamt, - uint32_t type, uint32_t cfval) const; + bool shift_carry_imm(uint32_t base, uint32_t shamt, + uint32_t type, uint32_t cfval) const; + bool shift_carry_rs(uint32_t base, uint32_t shamt, + uint32_t type, uint32_t cfval) const; - // Generate C for a shift by immediate - int32_t - shift_carry_imm(uint32_t base, uint32_t shamt, - uint32_t type, uint32_t cfval) const; + bool arm_add_carry(int32_t result, int32_t lhs, int32_t rhs) const; + bool arm_sub_carry(int32_t result, int32_t lhs, int32_t rhs) const; - // Generate C for a shift by Rs - int32_t - shift_carry_rs(uint32_t base, uint32_t shamt, - uint32_t type, uint32_t cfval) const; - - // Generate the appropriate carry bit for an addition operation - int32_t - arm_add_carry(int32_t result, int32_t lhs, int32_t rhs) const; - - // Generate the appropriate carry bit for a subtraction operation - int32_t - arm_sub_carry(int32_t result, int32_t lhs, int32_t rhs) const; - - int32_t - arm_add_overflow(int32_t result, int32_t lhs, int32_t rhs) const; - - int32_t - arm_sub_overflow(int32_t result, int32_t lhs, int32_t rhs) const; + bool arm_add_overflow(int32_t result, int32_t lhs, int32_t rhs) const; + bool arm_sub_overflow(int32_t result, int32_t lhs, int32_t rhs) const; // Constructor ArmStaticInst(const char *mnem, MachInst _machInst, OpClass __opClass) -- cgit v1.2.3