1// -*- mode:c++ -*- 2 3// Copyright (c) 2010 ARM Limited 4// All rights reserved 5// 6// The license below extends only to copyright in the software and shall 7// not be construed as granting a license to any other intellectual 8// property including but not limited to intellectual property relating
--- 172 unchanged lines hidden (view full) ---
181 BasicDeclare.subst(ccIop) 182 decoder_output = BasicConstructor.subst(iop) + \ 183 BasicConstructor.subst(ccIop) 184 exec_output = PredOpExecute.subst(iop) + \ 185 PredOpExecute.subst(ccIop) 186 decode_block = DataImmDecode.subst(iop) 187}}; 188
|
189def format DataModImmOp(code, flagtype = modImm) {{
190 code += "resTemp = resTemp;"
191 iop = InstObjParams(name, Name + "ModImm", 'PredModImmOp',
192 {"code": code,
193 "predicate_test": predicateTest})
194 ccIop = InstObjParams(name, Name + "ModImmCc", 'PredModImmOp',
195 {"code": code + getImmCcCode(flagtype),
196 "predicate_test": predicateTest})
197 header_output = BasicDeclare.subst(iop) + \
198 BasicDeclare.subst(ccIop)
199 decoder_output = BasicConstructor.subst(iop) + \
200 BasicConstructor.subst(ccIop)
201 exec_output = PredOpExecute.subst(iop) + \
202 PredOpExecute.subst(ccIop)
203 decode_block = DataImmDecode.subst(iop)
204}};
205
|
189def format PredOp(code, *opt_flags) {{ 190 iop = InstObjParams(name, Name, 'PredOp', 191 {"code": code, 192 "predicate_test": predicateTest}, 193 opt_flags) 194 header_output = BasicDeclare.subst(iop) 195 decoder_output = BasicConstructor.subst(iop) 196 decode_block = BasicDecode.subst(iop)
--- 6 unchanged lines hidden (view full) ---
203 "predicate_test": predicateTest}, 204 opt_flags) 205 header_output = BasicDeclare.subst(iop) 206 decoder_output = BasicConstructor.subst(iop) 207 decode_block = BasicDecode.subst(iop) 208 exec_output = PredOpExecute.subst(iop) 209}}; 210
|
228def format PredImmOpCc(code, icValue, ivValue, *opt_flags) {{
229 ccCode = calcCcCode % vars()
230 code += ccCode;
231 iop = InstObjParams(name, Name, 'PredImmOp',
232 {"code": code,
233 "cc_code": ccCode,
234 "predicate_test": predicateTest},
235 opt_flags)
236 header_output = BasicDeclare.subst(iop)
237 decoder_output = BasicConstructor.subst(iop)
238 decode_block = BasicDecode.subst(iop)
239 exec_output = PredOpExecute.subst(iop)
240}};
241
242def format PredIntOp(code, *opt_flags) {{
243 new_code = ArmGenericCodeSubs(code)
244 iop = InstObjParams(name, Name, 'PredIntOp',
245 {"code": new_code,
246 "predicate_test": predicateTest},
247 opt_flags)
248 header_output = BasicDeclare.subst(iop)
249 decoder_output = BasicConstructor.subst(iop)
250 decode_block = BasicDecode.subst(iop)
251 exec_output = PredOpExecute.subst(iop)
252}};
253
254def format PredIntOpCc(code, icValue, ivValue, *opt_flags) {{
255 ccCode = calcCcCode % vars()
256 code += ccCode;
257 new_code = ArmGenericCodeSubs(code)
258 iop = InstObjParams(name, Name, 'PredIntOp',
259 {"code": new_code,
260 "cc_code": ccCode,
261 "predicate_test": predicateTest},
262 opt_flags)
263 header_output = BasicDeclare.subst(iop)
264 decoder_output = BasicConstructor.subst(iop)
265 decode_block = BasicDecode.subst(iop)
266 exec_output = PredOpExecute.subst(iop)
267}};
268
|
|