Deleted Added
sdiff udiff text old ( 7099:1949ba4db2cf ) new ( 7110:7d27bd3e7ffb )
full compact
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
9 * notice, this list of conditions and the following disclaimer in the

--- 46 unchanged lines hidden (view full) ---

56 condCode((ConditionCode)(unsigned)machInst.condCode)
57 {
58 }
59};
60
61/**
62 * Base class for predicated immediate operations.
63 */
64class PredImmOp : public PredOp
65{
66 protected:
67
68 uint32_t imm;
69 uint32_t rotate;
70 uint32_t rotated_imm;
71 uint32_t rotated_carry;
72
73 /// Constructor
74 PredImmOp(const char *mnem, ExtMachInst _machInst, OpClass __opClass) :
75 PredOp(mnem, _machInst, __opClass),
76 imm(machInst.imm), rotate(machInst.rotate << 1),
77 rotated_imm(0), rotated_carry(0)
78 {
79 rotated_imm = rotate_imm(imm, rotate);
80 if (rotate != 0)
81 rotated_carry = (rotated_imm >> 31) & 1;
82 }
83
84 std::string generateDisassembly(Addr pc, const SymbolTable *symtab) const;
85};
86
87/**
88 * Base class for predicated integer operations.
89 */
90class PredIntOp : public PredOp
91{
92 protected:

--- 66 unchanged lines hidden ---