priv.isa (3599:fd83707783c7) | priv.isa (3627:1c91588389c5) |
---|---|
1// Copyright (c) 2006 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 --- 139 unchanged lines hidden (view full) --- 148 std::string WrPriv::generateDisassembly(Addr pc, 149 const SymbolTable *symtab) const 150 { 151 std::stringstream response; 152 153 printMnemonic(response, mnemonic); 154 155 ccprintf(response, " "); | 1// Copyright (c) 2006 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 --- 139 unchanged lines hidden (view full) --- 148 std::string WrPriv::generateDisassembly(Addr pc, 149 const SymbolTable *symtab) const 150 { 151 std::stringstream response; 152 153 printMnemonic(response, mnemonic); 154 155 ccprintf(response, " "); |
156 printSrcReg(response, 0); 157 ccprintf(response, ", "); | 156 //If the first reg is %g0, don't print it. 157 //This improves readability 158 if(_srcRegIdx[0] != 0) 159 { 160 printSrcReg(response, 0); 161 ccprintf(response, ", "); 162 } |
158 printSrcReg(response, 1); 159 ccprintf(response, ", %%%s", regName); 160 161 return response.str(); 162 } 163 164 std::string WrPrivImm::generateDisassembly(Addr pc, 165 const SymbolTable *symtab) const 166 { 167 std::stringstream response; 168 169 printMnemonic(response, mnemonic); 170 171 ccprintf(response, " "); | 163 printSrcReg(response, 1); 164 ccprintf(response, ", %%%s", regName); 165 166 return response.str(); 167 } 168 169 std::string WrPrivImm::generateDisassembly(Addr pc, 170 const SymbolTable *symtab) const 171 { 172 std::stringstream response; 173 174 printMnemonic(response, mnemonic); 175 176 ccprintf(response, " "); |
172 printSrcReg(response, 0); 173 ccprintf(response, ", 0x%x, %%%s", imm, regName); | 177 //If the first reg is %g0, don't print it. 178 //This improves readability 179 if(_srcRegIdx[0] != 0) 180 { 181 printSrcReg(response, 0); 182 ccprintf(response, ", "); 183 } 184 ccprintf(response, "0x%x, %%%s", imm, regName); |
174 175 return response.str(); 176 } 177}}; 178 179def template ControlRegConstructor {{ 180 inline %(class_name)s::%(class_name)s(ExtMachInst machInst) 181 : %(base_class)s("%(mnemonic)s", machInst, --- 99 unchanged lines hidden --- | 185 186 return response.str(); 187 } 188}}; 189 190def template ControlRegConstructor {{ 191 inline %(class_name)s::%(class_name)s(ExtMachInst machInst) 192 : %(base_class)s("%(mnemonic)s", machInst, --- 99 unchanged lines hidden --- |