I tested this by poisoning the old pattern and running check-gcc on both aarch64-none-elf and aarch64_be-none-elf; there were no regressions even with the poisoned pattern.

gcc/ChangeLog:

        * config/aarch64/aarch64-simd.md (aarch64_get_lanedi): Remove.
diff --git a/gcc/config/aarch64/aarch64-simd.md b/gcc/config/aarch64/aarch64-simd.md
index 56525738be2bbd7ed1f3e59cc2de63178a971755..4b6fd3abe891a6c067c86fb997ccc8eee81c0491 100644
--- a/gcc/config/aarch64/aarch64-simd.md
+++ b/gcc/config/aarch64/aarch64-simd.md
@@ -2417,17 +2417,6 @@
   [(set_attr "type" "neon_to_gp<q>, neon_dup<q>, neon_store1_one_lane<q>")]
 )
 
-(define_expand "aarch64_get_lanedi"
-  [(match_operand:DI 0 "register_operand")
-   (match_operand:DI 1 "register_operand")
-   (match_operand:SI 2 "immediate_operand")]
-  "TARGET_SIMD"
-{
-  aarch64_simd_lane_bounds (operands[2], 0, 1, NULL);
-  emit_move_insn (operands[0], operands[1]);
-  DONE;
-})
-
 ;; In this insn, operand 1 should be low, and operand 2 the high part of the
 ;; dest vector.
 

Reply via email to