basic.isa (10196:be0e1724eb39) | basic.isa (12234:78ece221f9f5) |
---|---|
1// -*- mode:c++ -*- 2 3// Copyright (c) 2011 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 --- 28 unchanged lines hidden (view full) --- 37// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 38// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 39// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 40// 41// Authors: Stephen Hines 42 43// Declarations for execute() methods. 44def template BasicExecDeclare {{ | 1// -*- mode:c++ -*- 2 3// Copyright (c) 2011 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 --- 28 unchanged lines hidden (view full) --- 37// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 38// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 39// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 40// 41// Authors: Stephen Hines 42 43// Declarations for execute() methods. 44def template BasicExecDeclare {{ |
45 Fault execute(%(CPU_exec_context)s *, Trace::InstRecord *) const; | 45 Fault execute(ExecContext *, Trace::InstRecord *) const; |
46}}; 47 48// Basic instruction class declaration template. 49def template BasicDeclare {{ 50 /** 51 * Static instruction class for "%(mnemonic)s". 52 */ 53 class %(class_name)s : public %(base_class)s --- 23 unchanged lines hidden (view full) --- 77 { 78 %(constructor)s; 79 } 80}}; 81 82 83// Basic instruction class execute method template. 84def template BasicExecute {{ | 46}}; 47 48// Basic instruction class declaration template. 49def template BasicDeclare {{ 50 /** 51 * Static instruction class for "%(mnemonic)s". 52 */ 53 class %(class_name)s : public %(base_class)s --- 23 unchanged lines hidden (view full) --- 77 { 78 %(constructor)s; 79 } 80}}; 81 82 83// Basic instruction class execute method template. 84def template BasicExecute {{ |
85 Fault %(class_name)s::execute(CPU_EXEC_CONTEXT *xc, Trace::InstRecord *traceData) const | 85 Fault %(class_name)s::execute( 86 ExecContext *xc, Trace::InstRecord *traceData) const |
86 { 87 Fault fault = NoFault; 88 89 %(op_decl)s; 90 %(op_rd)s; 91 %(code)s; 92 93 if (fault == NoFault) --- 11 unchanged lines hidden (view full) --- 105 106// Basic decode template, passing mnemonic in as string arg to constructor. 107def template BasicDecodeWithMnemonic {{ 108 return new %(class_name)s("%(mnemonic)s", machInst); 109}}; 110 111// Definitions of execute methods that panic. 112def template BasicExecPanic {{ | 87 { 88 Fault fault = NoFault; 89 90 %(op_decl)s; 91 %(op_rd)s; 92 %(code)s; 93 94 if (fault == NoFault) --- 11 unchanged lines hidden (view full) --- 106 107// Basic decode template, passing mnemonic in as string arg to constructor. 108def template BasicDecodeWithMnemonic {{ 109 return new %(class_name)s("%(mnemonic)s", machInst); 110}}; 111 112// Definitions of execute methods that panic. 113def template BasicExecPanic {{ |
113Fault execute(%(CPU_exec_context)s *, Trace::InstRecord *) const | 114Fault execute(ExecContext *, Trace::InstRecord *) const |
114{ 115 panic("Execute method called when it shouldn't!"); 116 // GCC < 4.3 fail to recognize the above panic as no return 117 return NoFault; 118} 119}}; | 115{ 116 panic("Execute method called when it shouldn't!"); 117 // GCC < 4.3 fail to recognize the above panic as no return 118 return NoFault; 119} 120}}; |