rs6000.md (indirect_jump<mode>_nospec): Make this a parameterized name.
authorSegher Boessenkool <segher@kernel.crashing.org>
Mon, 1 Jul 2019 18:38:21 +0000 (20:38 +0200)
committerSegher Boessenkool <segher@gcc.gnu.org>
Mon, 1 Jul 2019 18:38:21 +0000 (20:38 +0200)
@indirect_jump<mode>_nospec

* config/rs6000/rs6000.md (indirect_jump<mode>_nospec): Make this a
parameterized name.
(indirect_jump): Use that name.  Simplify.

From-SVN: r272898

gcc/ChangeLog
gcc/config/rs6000/rs6000.md

index 24d4aa0..71f9c59 100644 (file)
@@ -1,5 +1,11 @@
 2019-07-01  Segher Boessenkool  <segher@kernel.crashing.org>
 
+       * config/rs6000/rs6000.md (indirect_jump<mode>_nospec): Make this a
+       parameterized name.
+       (indirect_jump): Use that name.  Simplify.
+
+2019-07-01  Segher Boessenkool  <segher@kernel.crashing.org>
+
        * config/rs6000/rs6000.md (abs<mode>2_internal): Make this a
        parameterized name.
        (abs<mode>2): Use that name.  Simplify.
index 69465ed..d70362e 100644 (file)
 {
   if (!rs6000_speculate_indirect_jumps) {
     rtx ccreg = gen_reg_rtx (CCmode);
-    if (Pmode == DImode)
-      emit_jump_insn (gen_indirect_jumpdi_nospec (operands[0], ccreg));
-    else
-      emit_jump_insn (gen_indirect_jumpsi_nospec (operands[0], ccreg));
+    emit_jump_insn (gen_indirect_jump_nospec (Pmode, operands[0], ccreg));
     DONE;
   }
 })
   "b%T0"
   [(set_attr "type" "jmpreg")])
 
-(define_insn "indirect_jump<mode>_nospec"
+(define_insn "@indirect_jump<mode>_nospec"
   [(set (pc) (match_operand:P 0 "register_operand" "c,*l"))
    (clobber (match_operand:CC 1 "cc_reg_operand" "=y,y"))]
   "!rs6000_speculate_indirect_jumps"