summaryrefslogtreecommitdiff
path: root/src/arch/mips
diff options
context:
space:
mode:
authorSteve Reinhardt <stever@gmail.com>2007-10-31 18:04:22 -0700
committerSteve Reinhardt <stever@gmail.com>2007-10-31 18:04:22 -0700
commit4b49bd47f464fb3fe31a943b913edb565fa68423 (patch)
tree34cea1a1e0ed0365bcd6b64ed0c2510ed37ca00c /src/arch/mips
parent71b033f4dcd2b34a01256139e280489b8f0f69ee (diff)
downloadgem5-4b49bd47f464fb3fe31a943b913edb565fa68423.tar.xz
String constant const-ness changes to placate g++ 4.2.
Also some bug fixes in MIPS ISA uncovered by g++ warnings (Python string compares don't work in C++!). --HG-- extra : convert_revision : b347cc0108f23890e9b73b3ee96059f0cea96cf6
Diffstat (limited to 'src/arch/mips')
-rw-r--r--src/arch/mips/isa/base.isa4
-rw-r--r--src/arch/mips/isa/formats/branch.isa2
-rw-r--r--src/arch/mips/isa/formats/int.isa4
-rw-r--r--src/arch/mips/isa/formats/mt.isa4
4 files changed, 7 insertions, 7 deletions
diff --git a/src/arch/mips/isa/base.isa b/src/arch/mips/isa/base.isa
index 7c042f16f..e8e1c856e 100644
--- a/src/arch/mips/isa/base.isa
+++ b/src/arch/mips/isa/base.isa
@@ -82,7 +82,7 @@ output decoder {{
// Need to find standard way to not print
// this info. Maybe add bool variable to
// class?
- if (mnemonic != "syscall") {
+ if (strcmp(mnemonic, "syscall") != 0) {
if(_numDestRegs > 0){
printReg(ss, _destRegIdx[0]);
}
@@ -100,7 +100,7 @@ output decoder {{
// Should we define a separate inst. class
// just for two insts?
- if(mnemonic == "sll" || mnemonic == "sra"){
+ if (strcmp(mnemonic, "sll") == 0 || strcmp(mnemonic, "sra") == 0) {
ccprintf(ss,", %d",SA);
}
diff --git a/src/arch/mips/isa/formats/branch.isa b/src/arch/mips/isa/formats/branch.isa
index e959e4c1b..e786b3d9f 100644
--- a/src/arch/mips/isa/formats/branch.isa
+++ b/src/arch/mips/isa/formats/branch.isa
@@ -196,7 +196,7 @@ output decoder {{
ccprintf(ss, "%-10s ", mnemonic);
- if ( mnemonic == "jal" ) {
+ if (strcmp(mnemonic, "jal") == 0) {
Addr npc = pc + 4;
ccprintf(ss,"0x%x",(npc & 0xF0000000) | disp);
} else if (_numSrcRegs == 0) {
diff --git a/src/arch/mips/isa/formats/int.isa b/src/arch/mips/isa/formats/int.isa
index 7fa8e4817..f23c4cbf6 100644
--- a/src/arch/mips/isa/formats/int.isa
+++ b/src/arch/mips/isa/formats/int.isa
@@ -119,7 +119,7 @@ output header {{
{
//If Bit 15 is 1 then Sign Extend
int32_t temp = sextImm & 0x00008000;
- if (temp > 0 && mnemonic != "lui") {
+ if (temp > 0 && strcmp(mnemonic, "lui") != 0) {
sextImm |= 0xFFFF0000;
}
}
@@ -313,7 +313,7 @@ output decoder {{
ss << ", ";
}
- if( mnemonic == "lui")
+ if (strcmp(mnemonic, "lui") == 0)
ccprintf(ss, "0x%x ", sextImm);
else
ss << (int) sextImm;
diff --git a/src/arch/mips/isa/formats/mt.isa b/src/arch/mips/isa/formats/mt.isa
index b3520050a..d4c37f812 100644
--- a/src/arch/mips/isa/formats/mt.isa
+++ b/src/arch/mips/isa/formats/mt.isa
@@ -72,9 +72,9 @@ output decoder {{
{
std::stringstream ss;
- if (mnemonic == "mttc0" || mnemonic == "mftc0") {
+ if (strcmp(mnemonic, "mttc0") == 0 || strcmp(mnemonic, "mftc0") == 0) {
ccprintf(ss, "%-10s r%d, r%d, %d", mnemonic, RT, RD, SEL);
- } else if (mnemonic == "mftgpr") {
+ } else if (strcmp(mnemonic, "mftgpr") == 0) {
ccprintf(ss, "%-10s r%d, r%d", mnemonic, RD, RT);
} else {
ccprintf(ss, "%-10s r%d, r%d", mnemonic, RT, RD);