breakpoint.isa (12236:126ac9da6050) | breakpoint.isa (12542:03cb745f9982) |
---|---|
1// -*- mode:c++ -*- 2 | 1// -*- mode:c++ -*- 2 |
3// Copyright (c) 2010 ARM Limited | 3// Copyright (c) 2010,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 9// to a hardware implementation of the functionality of the software 10// licensed hereunder. You may use the software subject to the license 11// terms below provided that you ensure that this notice is replicated --- 70 unchanged lines hidden (view full) --- 82 Fault 83 Breakpoint::execute(ExecContext *xc, Trace::InstRecord *traceData) const 84 { 85 return std::make_shared<PrefetchAbort>(xc->pcState().pc(), 86 ArmFault::DebugEvent); 87 } 88}}; 89 | 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 9// to a hardware implementation of the functionality of the software 10// licensed hereunder. You may use the software subject to the license 11// terms below provided that you ensure that this notice is replicated --- 70 unchanged lines hidden (view full) --- 82 Fault 83 Breakpoint::execute(ExecContext *xc, Trace::InstRecord *traceData) const 84 { 85 return std::make_shared<PrefetchAbort>(xc->pcState().pc(), 86 ArmFault::DebugEvent); 87 } 88}}; 89 |
90def format Breakpoint() {{ 91 decode_block = 'return new Breakpoint(machInst);\n' | 90def format ArmBkptHlt() {{ 91 decode_block = ''' 92 { 93 if (bits(machInst, 21)) { 94 return new Breakpoint(machInst); 95 } else { 96 uint32_t imm16 = (bits(machInst, 19, 8) << 4) | 97 (bits(machInst, 3, 0) << 0); 98 return new Hlt(machInst, imm16); 99 } 100 } 101 ''' |
92}}; 93 | 102}}; 103 |