basic.isa (10196:be0e1724eb39) basic.isa (12234:78ece221f9f5)
1// Copyright (c) 2006-2007 The Regents of The University of Michigan
2// All rights reserved.
3//
4// Redistribution and use in source and binary forms, with or without
5// modification, are permitted provided that the following conditions are
6// met: redistributions of source code must retain the above copyright
7// notice, this list of conditions and the following disclaimer;
8// redistributions in binary form must reproduce the above copyright

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

25// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26//
27// Authors: Ali Saidi
28// Gabe Black
29// Steve Reinhardt
30
31// Declarations for execute() methods.
32def template BasicExecDeclare {{
1// Copyright (c) 2006-2007 The Regents of The University of Michigan
2// All rights reserved.
3//
4// Redistribution and use in source and binary forms, with or without
5// modification, are permitted provided that the following conditions are
6// met: redistributions of source code must retain the above copyright
7// notice, this list of conditions and the following disclaimer;
8// redistributions in binary form must reproduce the above copyright

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

25// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26//
27// Authors: Ali Saidi
28// Gabe Black
29// Steve Reinhardt
30
31// Declarations for execute() methods.
32def template BasicExecDeclare {{
33 Fault execute(%(CPU_exec_context)s *, Trace::InstRecord *) const;
33 Fault execute(ExecContext *, Trace::InstRecord *) const;
34}};
35
36def template DoFpOpDeclare {{
34}};
35
36def template DoFpOpDeclare {{
37 Fault doFpOp(%(CPU_exec_context)s *, Trace::InstRecord *)
37 Fault doFpOp(ExecContext *, Trace::InstRecord *)
38 const M5_NO_INLINE;
39}};
40
41// Definitions of execute methods that panic.
42def template BasicExecPanic {{
43 Fault
38 const M5_NO_INLINE;
39}};
40
41// Definitions of execute methods that panic.
42def template BasicExecPanic {{
43 Fault
44 execute(%(CPU_exec_context)s *, Trace::InstRecord *) const
44 execute(ExecContext *, Trace::InstRecord *) const
45 {
46 panic("Execute method called when it shouldn't!");
47 M5_DUMMY_RETURN
48 }
49}};
50
51// Basic instruction class declaration template.
52def template BasicDeclare {{

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

108 {
109 %(constructor)s;
110 }
111}};
112
113// Basic instruction class execute method template.
114def template BasicExecute {{
115 Fault
45 {
46 panic("Execute method called when it shouldn't!");
47 M5_DUMMY_RETURN
48 }
49}};
50
51// Basic instruction class declaration template.
52def template BasicDeclare {{

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

108 {
109 %(constructor)s;
110 }
111}};
112
113// Basic instruction class execute method template.
114def template BasicExecute {{
115 Fault
116 %(class_name)s::execute(CPU_EXEC_CONTEXT *xc,
116 %(class_name)s::execute(ExecContext *xc,
117 Trace::InstRecord *traceData) const
118 {
119 Fault fault = NoFault;
120
121 %(fp_enable_check)s;
122 %(op_decl)s;
123 %(op_rd)s;
124 %(code)s;
125
126 if (fault == NoFault) {
127 %(op_wb)s;
128 }
129 return fault;
130 }
131}};
132
133def template DoFpOpExecute {{
134 Fault
117 Trace::InstRecord *traceData) const
118 {
119 Fault fault = NoFault;
120
121 %(fp_enable_check)s;
122 %(op_decl)s;
123 %(op_rd)s;
124 %(code)s;
125
126 if (fault == NoFault) {
127 %(op_wb)s;
128 }
129 return fault;
130 }
131}};
132
133def template DoFpOpExecute {{
134 Fault
135 %(class_name)s::doFpOp(CPU_EXEC_CONTEXT *xc,
135 %(class_name)s::doFpOp(ExecContext *xc,
136 Trace::InstRecord *traceData) const
137 {
138 Fault fault = NoFault;
139 %(op_decl)s;
140 %(op_rd)s;
141 %(fp_code)s;
142 if (fault == NoFault) {
143 %(op_wb)s;

--- 53 unchanged lines hidden ---
136 Trace::InstRecord *traceData) const
137 {
138 Fault fault = NoFault;
139 %(op_decl)s;
140 %(op_rd)s;
141 %(fp_code)s;
142 if (fault == NoFault) {
143 %(op_wb)s;

--- 53 unchanged lines hidden ---