189,205d188
< def format DataModImmOp(code, flagtype = modImm) {{
< code += "resTemp = resTemp;"
< iop = InstObjParams(name, Name + "ModImm", 'PredModImmOp',
< {"code": code,
< "predicate_test": predicateTest})
< ccIop = InstObjParams(name, Name + "ModImmCc", 'PredModImmOp',
< {"code": code + getImmCcCode(flagtype),
< "predicate_test": predicateTest})
< header_output = BasicDeclare.subst(iop) + \
< BasicDeclare.subst(ccIop)
< decoder_output = BasicConstructor.subst(iop) + \
< BasicConstructor.subst(ccIop)
< exec_output = PredOpExecute.subst(iop) + \
< PredOpExecute.subst(ccIop)
< decode_block = DataImmDecode.subst(iop)
< }};
<
228,268d210
< def format PredImmOpCc(code, icValue, ivValue, *opt_flags) {{
< ccCode = calcCcCode % vars()
< code += ccCode;
< iop = InstObjParams(name, Name, 'PredImmOp',
< {"code": code,
< "cc_code": ccCode,
< "predicate_test": predicateTest},
< opt_flags)
< header_output = BasicDeclare.subst(iop)
< decoder_output = BasicConstructor.subst(iop)
< decode_block = BasicDecode.subst(iop)
< exec_output = PredOpExecute.subst(iop)
< }};
<
< def format PredIntOp(code, *opt_flags) {{
< new_code = ArmGenericCodeSubs(code)
< iop = InstObjParams(name, Name, 'PredIntOp',
< {"code": new_code,
< "predicate_test": predicateTest},
< opt_flags)
< header_output = BasicDeclare.subst(iop)
< decoder_output = BasicConstructor.subst(iop)
< decode_block = BasicDecode.subst(iop)
< exec_output = PredOpExecute.subst(iop)
< }};
<
< def format PredIntOpCc(code, icValue, ivValue, *opt_flags) {{
< ccCode = calcCcCode % vars()
< code += ccCode;
< new_code = ArmGenericCodeSubs(code)
< iop = InstObjParams(name, Name, 'PredIntOp',
< {"code": new_code,
< "cc_code": ccCode,
< "predicate_test": predicateTest},
< opt_flags)
< header_output = BasicDeclare.subst(iop)
< decoder_output = BasicConstructor.subst(iop)
< decode_block = BasicDecode.subst(iop)
< exec_output = PredOpExecute.subst(iop)
< }};
<