pred_inst.hh (6253:988a001820f8) | pred_inst.hh (6264:588457e03a81) |
---|---|
1/* Copyright (c) 2007-2008 The Florida State University 2 * All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions are 6 * met: redistributions of source code must retain the above copyright 7 * notice, this list of conditions and the following disclaimer; 8 * redistributions in binary form must reproduce the above copyright --- 68 unchanged lines hidden (view full) --- 77 PredOp(mnem, _machInst, __opClass), 78 imm(machInst.imm), rotate(machInst.rotate << 1), 79 rotated_imm(0), rotated_carry(0) 80 { 81 rotated_imm = rotate_imm(imm, rotate); 82 if (rotate != 0) 83 rotated_carry = (rotated_imm >> 31) & 1; 84 } | 1/* Copyright (c) 2007-2008 The Florida State University 2 * All rights reserved. 3 * 4 * Redistribution and use in source and binary forms, with or without 5 * modification, are permitted provided that the following conditions are 6 * met: redistributions of source code must retain the above copyright 7 * notice, this list of conditions and the following disclaimer; 8 * redistributions in binary form must reproduce the above copyright --- 68 unchanged lines hidden (view full) --- 77 PredOp(mnem, _machInst, __opClass), 78 imm(machInst.imm), rotate(machInst.rotate << 1), 79 rotated_imm(0), rotated_carry(0) 80 { 81 rotated_imm = rotate_imm(imm, rotate); 82 if (rotate != 0) 83 rotated_carry = (rotated_imm >> 31) & 1; 84 } |
85 86 std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; | |
87}; 88 89/** 90 * Base class for predicated integer operations. 91 */ 92class PredIntOp : public PredOp 93{ 94 protected: 95 96 uint32_t shift_size; 97 uint32_t shift; 98 99 /// Constructor 100 PredIntOp(const char *mnem, MachInst _machInst, OpClass __opClass) : 101 PredOp(mnem, _machInst, __opClass), 102 shift_size(machInst.shiftSize), shift(machInst.shift) 103 { 104 } | 85}; 86 87/** 88 * Base class for predicated integer operations. 89 */ 90class PredIntOp : public PredOp 91{ 92 protected: 93 94 uint32_t shift_size; 95 uint32_t shift; 96 97 /// Constructor 98 PredIntOp(const char *mnem, MachInst _machInst, OpClass __opClass) : 99 PredOp(mnem, _machInst, __opClass), 100 shift_size(machInst.shiftSize), shift(machInst.shift) 101 { 102 } |
105 106 std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const; | |
107}; 108 109/** 110 * Base class for predicated macro-operations. 111 */ 112class PredMacroOp : public PredOp 113{ 114 protected: --- 46 unchanged lines hidden --- | 103}; 104 105/** 106 * Base class for predicated macro-operations. 107 */ 108class PredMacroOp : public PredOp 109{ 110 protected: --- 46 unchanged lines hidden --- |