misc.isa (7355:8d9b757b3583) misc.isa (7358:69a04e7b14eb)
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

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

73 }
74 default:
75 return new Unknown(machInst);
76 }
77 }
78 '''
79}};
80
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

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

73 }
74 default:
75 return new Unknown(machInst);
76 }
77 }
78 '''
79}};
80
81def format McrMrc15() {{
82 decode_block = '''
81let {{
82 header_output = '''
83 StaticInstPtr
84 decodeMcrMrc15(ExtMachInst machInst);
85 '''
86 decoder_output = '''
87 StaticInstPtr
88 decodeMcrMrc15(ExtMachInst machInst)
83 {
84 const uint32_t opc1 = bits(machInst, 23, 21);
85 const uint32_t crn = bits(machInst, 19, 16);
86 const uint32_t opc2 = bits(machInst, 7, 5);
87 const uint32_t crm = bits(machInst, 3, 0);
88 const MiscRegIndex miscReg = decodeCP15Reg(crn, opc1, crm, opc2);
89 const IntRegIndex rt = (IntRegIndex)(uint32_t)bits(machInst, 15, 12);
90

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

175 return new Mrc15(machInst, rt, (IntRegIndex)miscReg);
176 } else {
177 return new Mcr15(machInst, (IntRegIndex)miscReg, rt);
178 }
179 }
180 }
181 '''
182}};
89 {
90 const uint32_t opc1 = bits(machInst, 23, 21);
91 const uint32_t crn = bits(machInst, 19, 16);
92 const uint32_t opc2 = bits(machInst, 7, 5);
93 const uint32_t crm = bits(machInst, 3, 0);
94 const MiscRegIndex miscReg = decodeCP15Reg(crn, opc1, crm, opc2);
95 const IntRegIndex rt = (IntRegIndex)(uint32_t)bits(machInst, 15, 12);
96

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

181 return new Mrc15(machInst, rt, (IntRegIndex)miscReg);
182 } else {
183 return new Mcr15(machInst, (IntRegIndex)miscReg, rt);
184 }
185 }
186 }
187 '''
188}};
189
190def format McrMrc15() {{
191 decode_block = '''
192 return decodeMcrMrc15(machInst);
193 '''
194}};