MIPS16/GCC: Fix DImode `casesi_internal_mips16_<mode>' assembly instructions
authorMaciej W. Rozycki <macro@imgtec.com>
Wed, 16 Nov 2016 21:35:02 +0000 (21:35 +0000)
committerMaciej W. Rozycki <macro@gcc.gnu.org>
Wed, 16 Nov 2016 21:35:02 +0000 (21:35 +0000)
gcc/
* config/mips/mips.md (casesi_internal_mips16_<mode>): Add
missing <d> instruction prefixes throughout.  Correct
formatting.

gcc/testsuite/
* gcc.target/mips/code-readable-4.c (dg-final): Expect `dla'
rather than `la'.

From-SVN: r242514

gcc/ChangeLog
gcc/config/mips/mips.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/mips/code-readable-4.c

index 4e437f0bb670d6c590473460a97a5e8b04eb04a8..30161a022ea513a6a8823ee2507cc6803ccc63d9 100644 (file)
@@ -1,3 +1,9 @@
+2016-11-16  Maciej W. Rozycki  <macro@imgtec.com>
+
+       * config/mips/mips.md (casesi_internal_mips16_<mode>): Add
+       missing <d> instruction prefixes throughout.  Correct
+       formatting.
+
 2016-11-16  Maciej W. Rozycki  <macro@imgtec.com>
 
        * config/mips/mips.c (mips_output_jump): Output R_MICROMIPS_JALR
index dc071d5e7b2ceaa3f54bcd855c9b934249363328..0ccee9ead45a729a692a93a13a2632476dcfb89c 100644 (file)
     {
     case HImode:
       output_asm_insn ("sll\t%5, %0, 1", operands);
-      output_asm_insn ("la\t%4, %2", operands);
+      output_asm_insn ("<d>la\t%4, %2", operands);
       output_asm_insn ("<d>addu\t%5, %4, %5", operands);
       output_asm_insn ("lh\t%5, 0(%5)", operands);
       break;
-    
+
     case SImode:
       output_asm_insn ("sll\t%5, %0, 2", operands);
-      output_asm_insn ("la\t%4, %2", operands);
+      output_asm_insn ("<d>la\t%4, %2", operands);
       output_asm_insn ("<d>addu\t%5, %4, %5", operands);
       output_asm_insn ("lw\t%5, 0(%5)", operands);
       break;
     default:
       gcc_unreachable ();
     }
-  
-  output_asm_insn ("addu\t%4, %4, %5", operands);
-  
+
+  output_asm_insn ("<d>addu\t%4, %4, %5", operands);
+
   return "j\t%4";
 }
   [(set_attr "insn_count" "16")])
index 0677079fb2b8f29c7c6bdd74a3e40391a1623b28..3707e7c29d2b7948cd8082e185f788bfcfa7f6fa 100644 (file)
@@ -1,3 +1,8 @@
+2016-11-16  Maciej W. Rozycki  <macro@imgtec.com>
+
+       * gcc.target/mips/code-readable-4.c (dg-final): Expect `dla'
+       rather than `la'.
+
 2016-11-16  Maciej W. Rozycki  <macro@imgtec.com>
 
        * gcc.target/mips/call-1.c (dg-options): Add `-mno-micromips'.
index beb9248de757377add5795dc91a5eb38f5e5c036..1a6fdf429be559af1cd655270a20fe5db5a387b9 100644 (file)
@@ -41,7 +41,7 @@ bar (void)
   return k;
 }
 
-/* { dg-final { scan-assembler "\tla\t" } } */
+/* { dg-final { scan-assembler "\tdla\t" } } */
 /* { dg-final { scan-assembler "\t\\.half\t" } } */
 /* { dg-final { scan-assembler-not "%hi\\(\[^)\]*L" } } */
 /* { dg-final { scan-assembler-not "%lo\\(\[^)\]*L" } } */