diff options
author | Maciej W. Rozycki <macro@linux-mips.org> | 2010-10-18 00:17:43 +0000 |
---|---|---|
committer | Maciej W. Rozycki <macro@linux-mips.org> | 2010-10-18 00:17:43 +0000 |
commit | 0970e49e1a9eada774c7bcd4093fa4df36effbb1 (patch) | |
tree | e6693730a0645e5eca465047ccb521d33c81e991 | |
parent | 704897fbeff6f2247f87578efb9054e246fd0cd0 (diff) | |
download | gdb-0970e49e1a9eada774c7bcd4093fa4df36effbb1.zip gdb-0970e49e1a9eada774c7bcd4093fa4df36effbb1.tar.gz gdb-0970e49e1a9eada774c7bcd4093fa4df36effbb1.tar.bz2 |
* config/tc-mips.c (macro)[ldd_std]: Fix the relaxation variant
for absolute addressing.
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/config/tc-mips.c | 21 |
2 files changed, 6 insertions, 20 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 68cea17..ac32847 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,10 @@ 2010-10-18 Maciej W. Rozycki <macro@linux-mips.org> + * config/tc-mips.c (macro)[ldd_std]: Fix the relaxation variant + for absolute addressing. + +2010-10-18 Maciej W. Rozycki <macro@linux-mips.org> + * config/tc-mips.c (macro)[M_LD_OB, M_SD_OB]: Handle 64-bit ABIs. 2010-10-18 Maciej W. Rozycki <macro@linux-mips.org> diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index bf26235..51dbd6f 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -7203,26 +7203,7 @@ macro (struct mips_cl_insn *ip) relax_switch (); - /* We just generated two relocs. When tc_gen_reloc - handles this case, it will skip the first reloc and - handle the second. The second reloc already has an - extra addend of 4, which we added above. We must - subtract it out, and then subtract another 4 to make - the first reloc come out right. The second reloc - will come out right because we are going to add 4 to - offset_expr when we build its instruction below. - - If we have a symbol, then we don't want to include - the offset, because it will wind up being included - when we generate the reloc. */ - - if (offset_expr.X_op == O_constant) - offset_expr.X_add_number -= 8; - else - { - offset_expr.X_add_number = -4; - offset_expr.X_op = O_constant; - } + offset_expr.X_add_number -= 4; } used_at = 1; macro_build_lui (&offset_expr, AT); |