main.isa (12106:7784fac1b159) main.isa (12234:78ece221f9f5)
1// -*- mode:c++ -*-
2
3// Copyright (c) 2003-2005 The Regents of The University of Michigan
4// All rights reserved.
5//
6// Redistribution and use in source and binary forms, with or without
7// modification, are permitted provided that the following conditions are
8// met: redistributions of source code must retain the above copyright

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

282 }
283
284 return ss.str();
285 }
286}};
287
288// Declarations for execute() methods.
289def template BasicExecDeclare {{
1// -*- mode:c++ -*-
2
3// Copyright (c) 2003-2005 The Regents of The University of Michigan
4// All rights reserved.
5//
6// Redistribution and use in source and binary forms, with or without
7// modification, are permitted provided that the following conditions are
8// met: redistributions of source code must retain the above copyright

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

282 }
283
284 return ss.str();
285 }
286}};
287
288// Declarations for execute() methods.
289def template BasicExecDeclare {{
290 Fault execute(%(CPU_exec_context)s *, Trace::InstRecord *) const;
290 Fault execute(ExecContext *, Trace::InstRecord *) const;
291}};
292
293// Basic instruction class declaration template.
294def template BasicDeclare {{
295 /**
296 * Static instruction class for "%(mnemonic)s".
297 */
298 class %(class_name)s : public %(base_class)s

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

311 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
312 {
313 %(constructor)s;
314 }
315}};
316
317// Basic instruction class execute method template.
318def template BasicExecute {{
291}};
292
293// Basic instruction class declaration template.
294def template BasicDeclare {{
295 /**
296 * Static instruction class for "%(mnemonic)s".
297 */
298 class %(class_name)s : public %(base_class)s

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

311 : %(base_class)s("%(mnemonic)s", machInst, %(op_class)s)
312 {
313 %(constructor)s;
314 }
315}};
316
317// Basic instruction class execute method template.
318def template BasicExecute {{
319 Fault %(class_name)s::execute(CPU_EXEC_CONTEXT *xc,
319 Fault %(class_name)s::execute(ExecContext *xc,
320 Trace::InstRecord *traceData) const
321 {
322 Fault fault = NoFault;
323
324 %(fp_enable_check)s;
325 %(op_decl)s;
326 %(op_rd)s;
327 %(code)s;

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

407#else
408 return csprintf("%-10s (%s)", "nop", originalDisassembly);
409#endif
410 }
411}};
412
413output exec {{
414 Fault
320 Trace::InstRecord *traceData) const
321 {
322 Fault fault = NoFault;
323
324 %(fp_enable_check)s;
325 %(op_decl)s;
326 %(op_rd)s;
327 %(code)s;

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

407#else
408 return csprintf("%-10s (%s)", "nop", originalDisassembly);
409#endif
410 }
411}};
412
413output exec {{
414 Fault
415 Nop::execute(CPU_EXEC_CONTEXT *, Trace::InstRecord *) const
415 Nop::execute(ExecContext *, Trace::InstRecord *) const
416 {
417 return NoFault;
418 }
419}};
420
421// integer & FP operate instructions use Rc as dest, so check for
422// Rc == 31 to detect nops
423def template OperateNopCheckDecode {{

--- 47 unchanged lines hidden ---
416 {
417 return NoFault;
418 }
419}};
420
421// integer & FP operate instructions use Rc as dest, so check for
422// Rc == 31 to detect nops
423def template OperateNopCheckDecode {{

--- 47 unchanged lines hidden ---