misc.isa (12762:f73d3a4aaf03) misc.isa (12789:b28b286fa57d)
1// -*- mode:c++ -*-
2
3// Copyright (c) 2010-2013,2017-2018 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

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

683 '''
684 usada8Iop = InstObjParams("usada8", "Usada8", "RegRegRegRegOp",
685 { "code": usada8Code,
686 "predicate_test": predicateTest }, [])
687 header_output += RegRegRegRegOpDeclare.subst(usada8Iop)
688 decoder_output += RegRegRegRegOpConstructor.subst(usada8Iop)
689 exec_output += PredOpExecute.subst(usada8Iop)
690
1// -*- mode:c++ -*-
2
3// Copyright (c) 2010-2013,2017-2018 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

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

683 '''
684 usada8Iop = InstObjParams("usada8", "Usada8", "RegRegRegRegOp",
685 { "code": usada8Code,
686 "predicate_test": predicateTest }, [])
687 header_output += RegRegRegRegOpDeclare.subst(usada8Iop)
688 decoder_output += RegRegRegRegOpConstructor.subst(usada8Iop)
689 exec_output += PredOpExecute.subst(usada8Iop)
690
691 bkptCode = 'return std::make_shared<PrefetchAbort>(PC, ArmFault::DebugEvent);\n'
691 bkptCode = '''
692 uint16_t imm16;
693 if (!machInst.thumb)
694 imm16 = ((bits(machInst, 19, 8) << 4) | bits(machInst, 3, 0));
695 else
696 imm16 = bits(machInst, 7, 0);
697
698 return softwareBreakpoint32(xc, imm16);
699 '''
692 bkptIop = InstObjParams("bkpt", "BkptInst", "PredOp", bkptCode)
693 header_output += BasicDeclare.subst(bkptIop)
694 decoder_output += BasicConstructor.subst(bkptIop)
695 exec_output += BasicExecute.subst(bkptIop)
696
697 nopIop = InstObjParams("nop", "NopInst", "ArmStaticInst", "", ['IsNop'])
698 header_output += BasicDeclare.subst(nopIop)
699 decoder_output += BasicConstructor64.subst(nopIop)

--- 573 unchanged lines hidden ---
700 bkptIop = InstObjParams("bkpt", "BkptInst", "PredOp", bkptCode)
701 header_output += BasicDeclare.subst(bkptIop)
702 decoder_output += BasicConstructor.subst(bkptIop)
703 exec_output += BasicExecute.subst(bkptIop)
704
705 nopIop = InstObjParams("nop", "NopInst", "ArmStaticInst", "", ['IsNop'])
706 header_output += BasicDeclare.subst(nopIop)
707 decoder_output += BasicConstructor64.subst(nopIop)

--- 573 unchanged lines hidden ---