aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog6
-rw-r--r--gas/config/tc-mips.c12
2 files changed, 12 insertions, 6 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 6ca4ede..0a46fe1 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2011-11-16 Maciej W. Rozycki <macro@codesourcery.com>
+
+ * config/tc-mips.c (macro_build_jalr): Reverse a negative
+ conditional.
+ (mips_ip): Likewise.
+
2011-11-16 Catherine Moore <clm@codesourcery.com>
Maciej W. Rozycki <macro@codesourcery.com>
diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c
index 6af54f8..886bdce 100644
--- a/gas/config/tc-mips.c
+++ b/gas/config/tc-mips.c
@@ -5260,9 +5260,7 @@ macro_build_jalr (expressionS *ep, int cprestore)
frag_grow (8);
f = frag_more (0);
}
- if (!mips_opts.micromips)
- macro_build (NULL, "jalr", "d,s", RA, PIC_CALL_REG);
- else
+ if (mips_opts.micromips)
{
jalr = mips_opts.noreorder && !cprestore ? "jalr" : "jalrs";
if (MIPS_JALR_HINT_P (ep))
@@ -5270,6 +5268,8 @@ macro_build_jalr (expressionS *ep, int cprestore)
else
macro_build (NULL, jalr, "mj", PIC_CALL_REG);
}
+ else
+ macro_build (NULL, "jalr", "d,s", RA, PIC_CALL_REG);
if (MIPS_JALR_HINT_P (ep))
fix_new_exp (frag_now, f - frag_now->fr_literal, 4, ep, FALSE, jalr_reloc);
}
@@ -10964,9 +10964,9 @@ mips_ip (char *str, struct mips_cl_insn *ip)
case '\\': /* 3-bit bit position. */
{
- unsigned long mask = (!mips_opts.micromips
- ? OP_MASK_3BITPOS
- : MICROMIPSOP_MASK_3BITPOS);
+ unsigned long mask = (mips_opts.micromips
+ ? MICROMIPSOP_MASK_3BITPOS
+ : OP_MASK_3BITPOS);
my_getExpression (&imm_expr, s);
check_absolute_expr (ip, &imm_expr);