static_inst.hh (6658:f4de76601762) static_inst.hh (7619:0a32de653c10)
1/*
2 * Copyright (c) 2003-2005 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

99 *
100 * The main component of this class is the vector of flags and the
101 * associated methods for reading them. Any object that can rely
102 * solely on these flags can process instructions without being
103 * recompiled for multiple ISAs.
104 */
105class StaticInstBase : public RefCounted
106{
1/*
2 * Copyright (c) 2003-2005 The Regents of The University of Michigan
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

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

99 *
100 * The main component of this class is the vector of flags and the
101 * associated methods for reading them. Any object that can rely
102 * solely on these flags can process instructions without being
103 * recompiled for multiple ISAs.
104 */
105class StaticInstBase : public RefCounted
106{
107 protected:
107 public:
108
109 /// Set of boolean static instruction properties.
110 ///
111 /// Notes:
112 /// - The IsInteger and IsFloating flags are based on the class of
113 /// registers accessed by the instruction. Although most
114 /// instructions will have exactly one of these two flags set, it
115 /// is possible for an instruction to have neither (e.g., direct

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

180 IsFirstMicroop, ///< This microop begins a microop sequence
181 //This flag doesn't do anything yet
182 IsMicroBranch, ///< This microop branches within the microcode for a macroop
183 IsDspOp,
184
185 NumFlags
186 };
187
108
109 /// Set of boolean static instruction properties.
110 ///
111 /// Notes:
112 /// - The IsInteger and IsFloating flags are based on the class of
113 /// registers accessed by the instruction. Although most
114 /// instructions will have exactly one of these two flags set, it
115 /// is possible for an instruction to have neither (e.g., direct

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

180 IsFirstMicroop, ///< This microop begins a microop sequence
181 //This flag doesn't do anything yet
182 IsMicroBranch, ///< This microop branches within the microcode for a macroop
183 IsDspOp,
184
185 NumFlags
186 };
187
188 protected:
189
188 /// Flag values for this instruction.
189 std::bitset<NumFlags> flags;
190
191 /// See opClass().
192 OpClass _opClass;
193
194 /// See numSrcRegs().
195 int8_t _numSrcRegs;

--- 465 unchanged lines hidden ---
190 /// Flag values for this instruction.
191 std::bitset<NumFlags> flags;
192
193 /// See opClass().
194 OpClass _opClass;
195
196 /// See numSrcRegs().
197 int8_t _numSrcRegs;

--- 465 unchanged lines hidden ---