Deleted Added
sdiff udiff text old ( 7142:c63c06703d0f ) new ( 7143:c81f34f9e075 )
full compact
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 ---