Fix target/93937
authorMichael Meissner <meissner@gcc.gnu.org>
Fri, 28 Feb 2020 18:28:45 +0000 (13:28 -0500)
committerMichael Meissner <meissner@gcc.gnu.org>
Fri, 28 Feb 2020 18:28:45 +0000 (13:28 -0500)
2020-02-28  Michael Meissner  <meissner@linux.ibm.com>

PR target/93937
* config/rs6000/vsx.md (vsx_extract_<mode>_<VS_scalar>mode_var):
Delete, the insn will never work.

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

index 1c2692a935c142227ea8cd38dcf2263e83ca5aca..7d95db8623fcc0d73389021c3c2f8d2657fd623b 100644 (file)
@@ -1,3 +1,9 @@
+2020-02-28  Michael Meissner  <meissner@linux.ibm.com>
+
+       PR target/93937
+       * config/rs6000/vsx.md (vsx_extract_<mode>_<VS_scalar>mode_var):
+       Delete insn.
+
 2020-02-28  Martin Liska  <mliska@suse.cz>
 
        PR other/93965
index b5d80f677dc79c40b1fe927ca6c11bb481482019..1fcc1b03096058f3f778c770b93068bd408f71e0 100644 (file)
 }
   [(set_attr "type" "load")])
 
-(define_insn_and_split "*vsx_extract_<mode>_<VS_scalar>mode_var"
-  [(set (match_operand:<VS_scalar> 0 "gpc_reg_operand" "=r,r,r")
-       (zero_extend:<VS_scalar>
-        (unspec:<VSX_EXTRACT_I:VS_scalar>
-         [(match_operand:VSX_EXTRACT_I 1 "input_operand" "v,v,Q")
-          (match_operand:DI 2 "gpc_reg_operand" "r,r,r")]
-         UNSPEC_VSX_EXTRACT)))
-   (clobber (match_scratch:DI 3 "=r,r,&b"))
-   (clobber (match_scratch:V2DI 4 "=X,&v,X"))]
-  "VECTOR_MEM_VSX_P (<VSX_EXTRACT_I:MODE>mode) && TARGET_DIRECT_MOVE_64BIT"
-  "#"
-  "&& reload_completed"
-  [(const_int 0)]
-{
-  machine_mode smode = <VS_scalar>mode;
-  rs6000_split_vec_extract_var (gen_rtx_REG (smode, REGNO (operands[0])),
-                               operands[1], operands[2],
-                               operands[3], operands[4]);
-  DONE;
-}
-  [(set_attr "isa" "p9v,*,*")])
-
 ;; VSX_EXTRACT optimizations
 ;; Optimize double d = (double) vec_extract (vi, <n>)
 ;; Get the element into the top position and use XVCVSWDP/XVCVUWDP