aboutsummaryrefslogtreecommitdiff
path: root/sim
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@airs.com>1997-02-13 19:08:55 +0000
committerIan Lance Taylor <ian@airs.com>1997-02-13 19:08:55 +0000
commitbd2f63470e1e965170f22f32bd6d183d28c9188e (patch)
tree208686c7e67d24ba12992f98d59c7e0658f96cb3 /sim
parent319305a75ffc84daa8f8649338ffdbc26566e18b (diff)
downloadgdb-bd2f63470e1e965170f22f32bd6d183d28c9188e.zip
gdb-bd2f63470e1e965170f22f32bd6d183d28c9188e.tar.gz
gdb-bd2f63470e1e965170f22f32bd6d183d28c9188e.tar.bz2
* gencode.c (build_mips16_operands): Correct computation of base
address for extended PC relative instruction.
Diffstat (limited to 'sim')
-rw-r--r--sim/mips/gencode.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sim/mips/gencode.c b/sim/mips/gencode.c
index 7518746..f5541fb 100644
--- a/sim/mips/gencode.c
+++ b/sim/mips/gencode.c
@@ -1523,7 +1523,7 @@ build_mips16_operands (bitmap)
{
int j;
- printf ("((INDELAYSLOT () ? (INJALDELAYSLOT () ? IPC - 4 : IPC - 2) : IPC) & ~ (uword64) 1)");
+ printf ("((INDELAYSLOT () ? (INJALDELAYSLOT () ? IPC - 4 : IPC - 2) : (have_extendval ? IPC - 2 : IPC)) & ~ (uword64) 1)");
for (j = 0; j < opindex; j++)
if (ops[j]->shift != 0)
printf (" & ~ (uword64) 0x%x", (1 << ops[j]->shift) - 1);