1/* 2 * Copyright (c) 2010 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 84 unchanged lines hidden (view full) --- 93 condCode((ConditionCode)(unsigned)machInst.condCode) 94 { 95 } 96}; 97 98/** 99 * Base class for predicated immediate operations. 100 */ |
101class PredImmOp : public PredOp |
102{ 103 protected: 104 105 uint32_t imm; 106 uint32_t rotated_imm; 107 uint32_t rotated_carry; |
108 uint32_t rotate; 109 110 /// Constructor 111 PredImmOp(const char *mnem, ExtMachInst _machInst, OpClass __opClass) : |
112 PredOp(mnem, _machInst, __opClass), 113 imm(machInst.imm), rotated_imm(0), rotated_carry(0), |
114 rotate(machInst.rotate << 1) 115 { 116 rotated_imm = rotate_imm(imm, rotate); 117 if (rotate != 0) 118 rotated_carry = bits(rotated_imm, 31); 119 } |
120 |
121 std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; |
122}; 123 124/** 125 * Base class for predicated integer operations. 126 */ 127class PredIntOp : public PredOp 128{ 129 protected: --- 119 unchanged lines hidden --- |