diff options
-rw-r--r-- | gas/ChangeLog | 5 | ||||
-rw-r--r-- | gas/config/tc-mips.c | 8 |
2 files changed, 9 insertions, 4 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index 9edeb20..e73e001 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +Wed May 29 16:43:16 1996 Ian Lance Taylor <ian@cygnus.com> + + * config/tc-mips.c (macro): When passing X_add_number to + macro_build, cast it to int first. + Tue May 28 13:29:39 1996 Ian Lance Taylor <ian@cygnus.com> * config/tc-z8k.c (md_apply_fix): Handle fx_r_type of 0, as diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index 31c856a..649f314 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -4417,9 +4417,9 @@ macro2 (ip) case M_ROL_I: macro_build ((char *) NULL, &icnt, NULL, "sll", "d,w,<", AT, sreg, - imm_expr.X_add_number & 0x1f); + (int) (imm_expr.X_add_number & 0x1f)); macro_build ((char *) NULL, &icnt, NULL, "srl", "d,w,<", dreg, sreg, - (0 - imm_expr.X_add_number) & 0x1f); + (int) ((0 - imm_expr.X_add_number) & 0x1f)); macro_build ((char *) NULL, &icnt, NULL, "or", "d,v,t", dreg, dreg, AT); break; @@ -4433,9 +4433,9 @@ macro2 (ip) case M_ROR_I: macro_build ((char *) NULL, &icnt, NULL, "srl", "d,w,<", AT, sreg, - imm_expr.X_add_number & 0x1f); + (int) (imm_expr.X_add_number & 0x1f)); macro_build ((char *) NULL, &icnt, NULL, "sll", "d,w,<", dreg, sreg, - (0 - imm_expr.X_add_number) & 0x1f); + (int) ((0 - imm_expr.X_add_number) & 0x1f)); macro_build ((char *) NULL, &icnt, NULL, "or", "d,v,t", dreg, dreg, AT); break; |