data.isa (7194:f72dc8789553) data.isa (7195:ccd270981263)
1// Copyright (c) 2010 ARM Limited
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

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

336 decode_block += '''
337 default:
338 return new Unknown(machInst);
339 }
340 }
341 '''
342}};
343
1// Copyright (c) 2010 ARM Limited
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

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

336 decode_block += '''
337 default:
338 return new Unknown(machInst);
339 }
340 }
341 '''
342}};
343
344def format ArmSatAddSub() {{
345 decode_block = '''
346 {
347 IntRegIndex rn = (IntRegIndex)(uint32_t)bits(machInst, 19, 16);
348 IntRegIndex rd = (IntRegIndex)(uint32_t)bits(machInst, 15, 12);
349 IntRegIndex rm = (IntRegIndex)(uint32_t)bits(machInst, 3, 0);
350 switch (OPCODE) {
351 case 0x8:
352 return new QaddRegCc(machInst, rd, rm, rn, 0, LSL);
353 case 0x9:
354 return new QsubRegCc(machInst, rd, rm, rn, 0, LSL);
355 case 0xa:
356 return new QdaddRegCc(machInst, rd, rm, rn, 0, LSL);
357 case 0xb:
358 return new QdsubRegCc(machInst, rd, rm, rn, 0, LSL);
359 default:
360 return new Unknown(machInst);
361 }
362 }
363 '''
364}};
365
344def format Thumb16ShiftAddSubMoveCmp() {{
345 decode_block = '''
346 {
347 const uint32_t imm5 = bits(machInst, 10, 6);
348 const uint32_t imm3 = bits(machInst, 8, 6);
349 const uint32_t imm8 = bits(machInst, 7, 0);
350 const IntRegIndex rd = (IntRegIndex)(uint32_t)bits(machInst, 2, 0);
351 const IntRegIndex rd8 = (IntRegIndex)(uint32_t)bits(machInst, 10, 8);

--- 486 unchanged lines hidden ---
366def format Thumb16ShiftAddSubMoveCmp() {{
367 decode_block = '''
368 {
369 const uint32_t imm5 = bits(machInst, 10, 6);
370 const uint32_t imm3 = bits(machInst, 8, 6);
371 const uint32_t imm8 = bits(machInst, 7, 0);
372 const IntRegIndex rd = (IntRegIndex)(uint32_t)bits(machInst, 2, 0);
373 const IntRegIndex rd8 = (IntRegIndex)(uint32_t)bits(machInst, 10, 8);

--- 486 unchanged lines hidden ---