1// Copyright (c) 2007-2008 The Hewlett-Packard Development Company 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 --- 33 unchanged lines hidden (view full) --- 42// 43// LdStOp Microop templates 44// 45////////////////////////////////////////////////////////////////////////// 46 47// LEA template 48 49def template MicroLeaExecute {{ |
50 Fault %(class_name)s::execute(CPU_EXEC_CONTEXT *xc, |
51 Trace::InstRecord *traceData) const 52 { 53 Fault fault = NoFault; 54 Addr EA; 55 56 %(op_decl)s; 57 %(op_rd)s; 58 %(ea_code)s; --- 23 unchanged lines hidden (view full) --- 82 83 %(BasicExecDeclare)s 84 }; 85}}; 86 87// Load templates 88 89def template MicroLoadExecute {{ |
90 Fault %(class_name)s::execute(CPU_EXEC_CONTEXT *xc, |
91 Trace::InstRecord *traceData) const 92 { 93 Fault fault = NoFault; 94 Addr EA; 95 96 %(op_decl)s; 97 %(op_rd)s; 98 %(ea_code)s; --- 12 unchanged lines hidden (view full) --- 111 %(op_wb)s; 112 } 113 114 return fault; 115 } 116}}; 117 118def template MicroLoadInitiateAcc {{ |
119 Fault %(class_name)s::initiateAcc(CPU_EXEC_CONTEXT * xc, |
120 Trace::InstRecord * traceData) const 121 { 122 Fault fault = NoFault; 123 Addr EA; 124 125 %(op_decl)s; 126 %(op_rd)s; 127 %(ea_code)s; 128 DPRINTF(X86, "%s : %s: The address is %#x\n", instMnem, mnemonic, EA); 129 130 fault = readMemTiming(xc, traceData, EA, Mem, dataSize, memFlags); 131 132 return fault; 133 } 134}}; 135 136def template MicroLoadCompleteAcc {{ 137 Fault %(class_name)s::completeAcc(PacketPtr pkt, |
138 CPU_EXEC_CONTEXT * xc, |
139 Trace::InstRecord * traceData) const 140 { 141 Fault fault = NoFault; 142 143 %(op_decl)s; 144 %(op_rd)s; 145 146 Mem = getMem(pkt, dataSize, traceData); --- 7 unchanged lines hidden (view full) --- 154 155 return fault; 156 } 157}}; 158 159// Store templates 160 161def template MicroStoreExecute {{ |
162 Fault %(class_name)s::execute(CPU_EXEC_CONTEXT * xc, |
163 Trace::InstRecord *traceData) const 164 { 165 Fault fault = NoFault; 166 167 Addr EA; 168 %(op_decl)s; 169 %(op_rd)s; 170 %(ea_code)s; --- 11 unchanged lines hidden (view full) --- 182 } 183 } 184 185 return fault; 186 } 187}}; 188 189def template MicroStoreInitiateAcc {{ |
190 Fault %(class_name)s::initiateAcc(CPU_EXEC_CONTEXT * xc, |
191 Trace::InstRecord * traceData) const 192 { 193 Fault fault = NoFault; 194 195 Addr EA; 196 %(op_decl)s; 197 %(op_rd)s; 198 %(ea_code)s; --- 7 unchanged lines hidden (view full) --- 206 memFlags, NULL); 207 } 208 return fault; 209 } 210}}; 211 212def template MicroStoreCompleteAcc {{ 213 Fault %(class_name)s::completeAcc(PacketPtr pkt, |
214 CPU_EXEC_CONTEXT * xc, Trace::InstRecord * traceData) const |
215 { 216 %(op_decl)s; 217 %(op_rd)s; 218 %(complete_code)s; 219 %(op_wb)s; 220 return NoFault; 221 } 222}}; --- 314 unchanged lines hidden --- |