From: Richard Sandiford Date: Mon, 4 Jul 2011 20:22:52 +0000 (+0000) Subject: gas/ X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=fe35f09f47706967f1ccc7c29b6b07823b8d36c6;p=binutils-gdb.git gas/ * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Fix handling of register 0. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index 8bc4f507988..9c0ded14b7b 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2011-07-04 Richard Sandiford + + * config/tc-mips.c (gpr_read_mask, gpr_write_mask): Fix handling + of register 0. + 2011-07-04 Maciej W. Rozycki * config/tc-mips.c (append_insn): Make sure DWARF-2 location diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index 2b3e4dcbb76..bcb1822229a 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -2450,7 +2450,8 @@ gpr_read_mask (const struct mips_cl_insn *ip) if (pinfo2 & INSN2_READ_GPR_Z) mask |= 1 << EXTRACT_OPERAND (RZ, *ip); } - return mask & ~0; + /* Don't include register 0. */ + return mask & ~1; } /* Return the mask of core registers that IP writes. */ @@ -2492,7 +2493,8 @@ gpr_write_mask (const struct mips_cl_insn *ip) if (pinfo2 & INSN2_WRITE_GPR_Z) mask |= 1 << EXTRACT_OPERAND (RZ, *ip); } - return mask & ~0; + /* Don't include register 0. */ + return mask & ~1; } /* Return the mask of floating-point registers that IP reads. */