diff --git a/gas/ChangeLog b/gas/ChangeLog index b9e78601a0..9df5fd37f2 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,8 @@ Fri Dec 13 13:00:33 1996 Ian Lance Taylor + * config/tc-mips.c (mips16_macro): Remove nop instructions after + branch instructions. + * config/tc-mips.c (md_begin): If configured for an embedded ELF system, don't set the section alignment to 2**4. (s_change_sec): Likewise. diff --git a/gas/config/tc-mips.c b/gas/config/tc-mips.c index 4b1f0e6557..1bd8f9163f 100644 --- a/gas/config/tc-mips.c +++ b/gas/config/tc-mips.c @@ -5711,9 +5711,8 @@ mips16_macro (ip) macro_build ((char *) NULL, &icnt, NULL, dbl ? "ddiv" : "div", "0,x,y", xreg, yreg); - expr1.X_add_number = 4; + expr1.X_add_number = 2; macro_build ((char *) NULL, &icnt, &expr1, "bnez", "x,p", yreg); - macro_build ((char *) NULL, &icnt, NULL, "nop", ""); macro_build ((char *) NULL, &icnt, NULL, "break", "6", 7); /* FIXME: The normal code checks for of -1 / -0x80000000 here, since that causes an overflow. We should do that as well, @@ -5743,9 +5742,8 @@ mips16_macro (ip) ++mips_noreorder; mips_any_noreorder = 1; macro_build ((char *) NULL, &icnt, NULL, s, "0,x,y", xreg, yreg); - expr1.X_add_number = 4; + expr1.X_add_number = 2; macro_build ((char *) NULL, &icnt, &expr1, "bnez", "x,p", yreg); - macro_build ((char *) NULL, &icnt, NULL, "nop", "", 0); macro_build ((char *) NULL, &icnt, NULL, "break", "6", 7); --mips_noreorder; macro_build ((char *) NULL, &icnt, NULL, s2, "x", zreg);