specop.isa (10184:bbfa3152bdea) | specop.isa (10196:be0e1724eb39) |
---|---|
1// Copyright (c) 2007-2008 The Hewlett-Packard Development Company 2// Copyright (c) 2011 Mark D. Hill and David A. Wood 3// All rights reserved. 4// 5// The license below extends only to copyright in the software and shall 6// not be construed as granting a license to any other intellectual 7// property including but not limited to intellectual property relating 8// to a hardware implementation of the functionality of the software --- 73 unchanged lines hidden (view full) --- 82 %(class_name)s(ExtMachInst _machInst, const char * instMnem, 83 uint64_t setFlags, Fault _fault, uint8_t _cc); 84 85 %(BasicExecDeclare)s 86 }; 87}}; 88 89def template MicroFaultExecute {{ | 1// Copyright (c) 2007-2008 The Hewlett-Packard Development Company 2// Copyright (c) 2011 Mark D. Hill and David A. Wood 3// All rights reserved. 4// 5// The license below extends only to copyright in the software and shall 6// not be construed as granting a license to any other intellectual 7// property including but not limited to intellectual property relating 8// to a hardware implementation of the functionality of the software --- 73 unchanged lines hidden (view full) --- 82 %(class_name)s(ExtMachInst _machInst, const char * instMnem, 83 uint64_t setFlags, Fault _fault, uint8_t _cc); 84 85 %(BasicExecDeclare)s 86 }; 87}}; 88 89def template MicroFaultExecute {{ |
90 Fault %(class_name)s::execute(%(CPU_exec_context)s *xc, | 90 Fault %(class_name)s::execute(CPU_EXEC_CONTEXT *xc, |
91 Trace::InstRecord *traceData) const 92 { 93 %(op_decl)s; 94 %(op_rd)s; 95 if (%(cond_test)s) { 96 //Return the fault we were constructed with 97 return fault; 98 } else { 99 return NoFault; 100 } 101 } 102}}; 103 104output exec {{ 105 Fault | 91 Trace::InstRecord *traceData) const 92 { 93 %(op_decl)s; 94 %(op_rd)s; 95 if (%(cond_test)s) { 96 //Return the fault we were constructed with 97 return fault; 98 } else { 99 return NoFault; 100 } 101 } 102}}; 103 104output exec {{ 105 Fault |
106 MicroHalt::execute(%(CPU_exec_context)s *xc, | 106 MicroHalt::execute(CPU_EXEC_CONTEXT *xc, |
107 Trace::InstRecord * traceData) const 108 { 109 xc->tcBase()->suspend(); 110 return NoFault; 111 } 112}}; 113 114output decoder {{ --- 145 unchanged lines hidden --- | 107 Trace::InstRecord * traceData) const 108 { 109 xc->tcBase()->suspend(); 110 return NoFault; 111 } 112}}; 113 114output decoder {{ --- 145 unchanged lines hidden --- |