[committed] Tidy va_arg usage in tc-mips.c:macro_build
Richard Sandiford
rdsandiford@googlemail.com
Sun Jul 14 13:16:00 GMT 2013
Most variable arguments to macro_build are passed as ints, but a few
were unnecessarily passed as longs instead. This patch converts them
all to int. It also switches the one use of "unsigned int" to "int".
Tested on various targets and applied.
Richard
gas/
* config/tc-mips.c (macro_build): Take an int for "C", "k", "\\"
and "~".
(macro): Update accordingly.
Index: gas/config/tc-mips.c
===================================================================
--- gas/config/tc-mips.c 2013-07-14 10:23:53.659451249 +0100
+++ gas/config/tc-mips.c 2013-07-14 10:31:27.869873880 +0100
@@ -5559,12 +5559,12 @@ macro_build (expressionS *ep, const char
case 'C':
gas_assert (!mips_opts.micromips);
- INSERT_OPERAND (0, COPZ, insn, va_arg (args, unsigned long));
+ INSERT_OPERAND (0, COPZ, insn, va_arg (args, int));
continue;
case 'k':
INSERT_OPERAND (mips_opts.micromips,
- CACHE, insn, va_arg (args, unsigned long));
+ CACHE, insn, va_arg (args, int));
continue;
case '|':
@@ -5579,12 +5579,12 @@ macro_build (expressionS *ep, const char
case '\\':
INSERT_OPERAND (mips_opts.micromips,
- 3BITPOS, insn, va_arg (args, unsigned int));
+ 3BITPOS, insn, va_arg (args, int));
continue;
case '~':
INSERT_OPERAND (mips_opts.micromips,
- OFFSET12, insn, va_arg (args, unsigned long));
+ OFFSET12, insn, va_arg (args, int));
continue;
case 'N':
@@ -8180,26 +8180,17 @@ macro (struct mips_cl_insn *ip, char *st
case M_MSGSND:
gas_assert (!mips_opts.micromips);
- {
- unsigned long temp = (treg << 16) | (0x01);
- macro_build (NULL, "c2", "C", temp);
- }
+ macro_build (NULL, "c2", "C", (treg << 16) | 0x01);
break;
case M_MSGLD:
gas_assert (!mips_opts.micromips);
- {
- unsigned long temp = (0x02);
- macro_build (NULL, "c2", "C", temp);
- }
+ macro_build (NULL, "c2", "C", 0x02);
break;
case M_MSGLD_T:
gas_assert (!mips_opts.micromips);
- {
- unsigned long temp = (treg << 16) | (0x02);
- macro_build (NULL, "c2", "C", temp);
- }
+ macro_build (NULL, "c2", "C", (treg << 16) | 0x02);
break;
case M_MSGWAIT:
@@ -8209,10 +8200,7 @@ macro (struct mips_cl_insn *ip, char *st
case M_MSGWAIT_T:
gas_assert (!mips_opts.micromips);
- {
- unsigned long temp = (treg << 16) | 0x03;
- macro_build (NULL, "c2", "C", temp);
- }
+ macro_build (NULL, "c2", "C", (treg << 16) | 0x03);
break;
case M_J_A:
@@ -8834,7 +8822,7 @@ macro (struct mips_cl_insn *ip, char *st
macro_build (NULL, s, fmt, treg, breg);
else
macro_build (NULL, s, fmt, treg,
- (unsigned long) offset_expr.X_add_number, breg);
+ (int) offset_expr.X_add_number, breg);
}
else
{
@@ -8846,7 +8834,7 @@ macro (struct mips_cl_insn *ip, char *st
if (offbits == 0)
macro_build (NULL, s, fmt, treg, tempreg);
else
- macro_build (NULL, s, fmt, treg, 0L, tempreg);
+ macro_build (NULL, s, fmt, treg, 0, tempreg);
}
break;
}
@@ -8893,7 +8881,7 @@ macro (struct mips_cl_insn *ip, char *st
macro_build (&offset_expr, s, fmt, treg, BFD_RELOC_LO16, tempreg);
else
macro_build (NULL, s, fmt, treg,
- (unsigned long) offset_expr.X_add_number, tempreg);
+ (int) offset_expr.X_add_number, tempreg);
}
else if (offbits != 16)
{
@@ -8907,7 +8895,7 @@ macro (struct mips_cl_insn *ip, char *st
if (offbits == 0)
macro_build (NULL, s, fmt, treg, tempreg);
else
- macro_build (NULL, s, fmt, treg, 0L, tempreg);
+ macro_build (NULL, s, fmt, treg, 0, tempreg);
}
else if (mips_pic == NO_PIC)
{
@@ -9763,7 +9751,7 @@ macro (struct mips_cl_insn *ip, char *st
gas_assert (!mips_opts.micromips);
/* For now we just do C (same as Cz). The parameter will be
stored in insn_opcode by mips_ip. */
- macro_build (NULL, s, "C", ip->insn_opcode);
+ macro_build (NULL, s, "C", (int) ip->insn_opcode);
break;
case M_MOVE:
@@ -10462,8 +10450,7 @@ macro (struct mips_cl_insn *ip, char *st
if (!target_big_endian)
ep->X_add_number += off;
if (offbits == 12)
- macro_build (NULL, s, "t,~(b)",
- tempreg, (unsigned long) ep->X_add_number, breg);
+ macro_build (NULL, s, "t,~(b)", tempreg, (int) ep->X_add_number, breg);
else
macro_build (ep, s, "t,o(b)", tempreg, -1,
offset_reloc[0], offset_reloc[1], offset_reloc[2], breg);
@@ -10474,7 +10461,7 @@ macro (struct mips_cl_insn *ip, char *st
ep->X_add_number += off;
if (offbits == 12)
macro_build (NULL, s2, "t,~(b)",
- tempreg, (unsigned long) ep->X_add_number, breg);
+ tempreg, (int) ep->X_add_number, breg);
else
macro_build (ep, s2, "t,o(b)", tempreg, -1,
offset_reloc[0], offset_reloc[1], offset_reloc[2], breg);
More information about the Binutils
mailing list