1// -*- mode:c++ -*- 2 3// Copyright (c) 2007 MIPS Technologies, Inc. 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 --- 71 unchanged lines hidden (view full) --- 80 ccprintf(ss, "%-10s r%d, r%d", mnemonic, RT, RD); 81 } 82 83 return ss.str(); 84 } 85}}; 86 87output header {{ |
88 void getThrRegExValues(ExecContext *xc, |
89 MipsISA::VPEConf0Reg &vpe_conf0, 90 MipsISA::TCBindReg &tc_bind_mt, 91 MipsISA::TCBindReg &tc_bind, 92 MipsISA::VPEControlReg &vpe_control, 93 MipsISA::MVPConf0Reg &mvp_conf0); 94 |
95 void getMTExValues(ExecContext *xc, MipsISA::Config3Reg &config3); |
96}}; 97 98output exec {{ |
99 void getThrRegExValues(ExecContext *xc, |
100 VPEConf0Reg &vpe_conf0, TCBindReg &tc_bind_mt, 101 TCBindReg &tc_bind, VPEControlReg &vpe_control, 102 MVPConf0Reg &mvp_conf0) 103 { 104 vpe_conf0 = xc->readMiscReg(MISCREG_VPE_CONF0); 105 tc_bind_mt = xc->readRegOtherThread(RegId(MiscRegClass, 106 MISCREG_TC_BIND)); 107 tc_bind = xc->readMiscReg(MISCREG_TC_BIND); 108 vpe_control = xc->readMiscReg(MISCREG_VPE_CONTROL); 109 mvp_conf0 = xc->readMiscReg(MISCREG_MVP_CONF0); 110 } 111 |
112 void getMTExValues(ExecContext *xc, Config3Reg &config3) |
113 { 114 config3 = xc->readMiscReg(MISCREG_CONFIG3); 115 } 116}}; 117 118def template ThreadRegisterExecute {{ |
119 Fault %(class_name)s::execute( 120 ExecContext *xc, Trace::InstRecord *traceData) const |
121 { 122 Fault fault = NoFault; 123 int64_t data M5_VAR_USED; 124 %(op_decl)s; 125 %(op_rd)s; 126 127 VPEConf0Reg vpeConf0; 128 TCBindReg tcBindMT; --- 21 unchanged lines hidden (view full) --- 150 %(op_wb)s; 151 } 152 153 return fault; 154 } 155}}; 156 157def template MTExecute{{ |
158 Fault %(class_name)s::execute( 159 ExecContext *xc, Trace::InstRecord *traceData) const |
160 { 161 Fault fault = NoFault; 162 %(op_decl)s; 163 %(op_rd)s; 164 165 Config3Reg config3; 166 167 getMTExValues(xc, config3); --- 63 unchanged lines hidden --- |