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

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

41// Authors: Stephen Hines
42
43////////////////////////////////////////////////////////////////////
44//
45// Predicated Instruction Execution
46//
47
48let {{
49 predicateTest = 'testPredicate(CondCodes, condCode)'
49 predicateTest = '''
50 testPredicate(CondCodes, machInst.itstateMask ?
51 (ConditionCode)(uint8_t)machInst.itstateCond :
52 condCode)
53 '''
54}};
55
56def template DataImmDeclare {{
57class %(class_name)s : public %(base_class)s
58{
59 public:
60 // Constructor
61 %(class_name)s(ExtMachInst machInst, IntRegIndex _dest,

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

142 {
143 %(code)s;
144 if (fault == NoFault)
145 {
146 %(op_wb)s;
147 }
148 }
149
150 if (fault == NoFault && machInst.itstateMask != 0) {
151 xc->setMiscReg(MISCREG_ITSTATE, machInst.newItstate);
152 }
153
154 return fault;
155 }
156}};
157
158def template DataDecode {{
159 if (machInst.opcode4 == 0) {
160 if (machInst.sField == 0)
161 return new %(class_name)sImm(machInst);

--- 16 unchanged lines hidden ---