regop.isa (7620:3d8a23caa1ef) | regop.isa (7626:bdd926760470) |
---|---|
1// Copyright (c) 2007-2008 The Hewlett-Packard Development Company 2// All rights reserved. 3// 4// The license below extends only to copyright in the software and shall 5// not be construed as granting a license to any other intellectual 6// property including but not limited to intellectual property relating 7// to a hardware implementation of the functionality of the software 8// licensed hereunder. You may use the software subject to the license --- 87 unchanged lines hidden (view full) --- 96 } 97 return fault; 98 } 99}}; 100 101def template MicroRegOpDeclare {{ 102 class %(class_name)s : public %(base_class)s 103 { | 1// Copyright (c) 2007-2008 The Hewlett-Packard Development Company 2// All rights reserved. 3// 4// The license below extends only to copyright in the software and shall 5// not be construed as granting a license to any other intellectual 6// property including but not limited to intellectual property relating 7// to a hardware implementation of the functionality of the software 8// licensed hereunder. You may use the software subject to the license --- 87 unchanged lines hidden (view full) --- 96 } 97 return fault; 98 } 99}}; 100 101def template MicroRegOpDeclare {{ 102 class %(class_name)s : public %(base_class)s 103 { |
104 protected: 105 void buildMe(); 106 | |
107 public: 108 %(class_name)s(ExtMachInst _machInst, 109 const char * instMnem, uint64_t setFlags, 110 InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest, 111 uint8_t _dataSize, uint16_t _ext); 112 | 104 public: 105 %(class_name)s(ExtMachInst _machInst, 106 const char * instMnem, uint64_t setFlags, 107 InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest, 108 uint8_t _dataSize, uint16_t _ext); 109 |
113 %(class_name)s(ExtMachInst _machInst, 114 const char * instMnem, 115 InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest, 116 uint8_t _dataSize, uint16_t _ext); 117 | |
118 %(BasicExecDeclare)s 119 }; 120}}; 121 122def template MicroRegOpImmDeclare {{ 123 124 class %(class_name)s : public %(base_class)s 125 { | 110 %(BasicExecDeclare)s 111 }; 112}}; 113 114def template MicroRegOpImmDeclare {{ 115 116 class %(class_name)s : public %(base_class)s 117 { |
126 protected: 127 void buildMe(); 128 | |
129 public: 130 %(class_name)s(ExtMachInst _machInst, 131 const char * instMnem, uint64_t setFlags, 132 InstRegIndex _src1, uint8_t _imm8, InstRegIndex _dest, 133 uint8_t _dataSize, uint16_t _ext); 134 | 118 public: 119 %(class_name)s(ExtMachInst _machInst, 120 const char * instMnem, uint64_t setFlags, 121 InstRegIndex _src1, uint8_t _imm8, InstRegIndex _dest, 122 uint8_t _dataSize, uint16_t _ext); 123 |
135 %(class_name)s(ExtMachInst _machInst, 136 const char * instMnem, 137 InstRegIndex _src1, uint8_t _imm8, InstRegIndex _dest, 138 uint8_t _dataSize, uint16_t _ext); 139 | |
140 %(BasicExecDeclare)s 141 }; 142}}; 143 144def template MicroRegOpConstructor {{ | 124 %(BasicExecDeclare)s 125 }; 126}}; 127 128def template MicroRegOpConstructor {{ |
145 146 inline void %(class_name)s::buildMe() 147 { 148 %(constructor)s; 149 } 150 | |
151 inline %(class_name)s::%(class_name)s( | 129 inline %(class_name)s::%(class_name)s( |
152 ExtMachInst machInst, const char * instMnem, 153 InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest, 154 uint8_t _dataSize, uint16_t _ext) : 155 %(base_class)s(machInst, "%(mnemonic)s", instMnem, 0, 156 _src1, _src2, _dest, _dataSize, _ext, 157 %(op_class)s) 158 { 159 buildMe(); 160 } 161 162 inline %(class_name)s::%(class_name)s( | |
163 ExtMachInst machInst, const char * instMnem, uint64_t setFlags, 164 InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest, 165 uint8_t _dataSize, uint16_t _ext) : 166 %(base_class)s(machInst, "%(mnemonic)s", instMnem, setFlags, 167 _src1, _src2, _dest, _dataSize, _ext, 168 %(op_class)s) 169 { | 130 ExtMachInst machInst, const char * instMnem, uint64_t setFlags, 131 InstRegIndex _src1, InstRegIndex _src2, InstRegIndex _dest, 132 uint8_t _dataSize, uint16_t _ext) : 133 %(base_class)s(machInst, "%(mnemonic)s", instMnem, setFlags, 134 _src1, _src2, _dest, _dataSize, _ext, 135 %(op_class)s) 136 { |
170 buildMe(); | 137 %(constructor)s; |
171 } 172}}; 173 174def template MicroRegOpImmConstructor {{ | 138 } 139}}; 140 141def template MicroRegOpImmConstructor {{ |
175 176 inline void %(class_name)s::buildMe() 177 { 178 %(constructor)s; 179 } 180 | |
181 inline %(class_name)s::%(class_name)s( | 142 inline %(class_name)s::%(class_name)s( |
182 ExtMachInst machInst, const char * instMnem, 183 InstRegIndex _src1, uint8_t _imm8, InstRegIndex _dest, 184 uint8_t _dataSize, uint16_t _ext) : 185 %(base_class)s(machInst, "%(mnemonic)s", instMnem, 0, 186 _src1, _imm8, _dest, _dataSize, _ext, 187 %(op_class)s) 188 { 189 buildMe(); 190 } 191 192 inline %(class_name)s::%(class_name)s( | |
193 ExtMachInst machInst, const char * instMnem, uint64_t setFlags, 194 InstRegIndex _src1, uint8_t _imm8, InstRegIndex _dest, 195 uint8_t _dataSize, uint16_t _ext) : 196 %(base_class)s(machInst, "%(mnemonic)s", instMnem, setFlags, 197 _src1, _imm8, _dest, _dataSize, _ext, 198 %(op_class)s) 199 { | 143 ExtMachInst machInst, const char * instMnem, uint64_t setFlags, 144 InstRegIndex _src1, uint8_t _imm8, InstRegIndex _dest, 145 uint8_t _dataSize, uint16_t _ext) : 146 %(base_class)s(machInst, "%(mnemonic)s", instMnem, setFlags, 147 _src1, _imm8, _dest, _dataSize, _ext, 148 %(op_class)s) 149 { |
200 buildMe(); | 150 %(constructor)s; |
201 } 202}}; 203 204output header {{ 205 void 206 divide(uint64_t dividend, uint64_t divisor, 207 uint64_t "ient, uint64_t &remainder); 208 --- 1224 unchanged lines hidden --- | 151 } 152}}; 153 154output header {{ 155 void 156 divide(uint64_t dividend, uint64_t divisor, 157 uint64_t "ient, uint64_t &remainder); 158 --- 1224 unchanged lines hidden --- |