From 352b660c1b05d48722daf560763d8d5e5728fec6 Mon Sep 17 00:00:00 2001 From: Alexey Bataev Date: Wed, 4 Jan 2023 10:26:53 -0800 Subject: [PATCH] [SLP][NFC]Add a pass. --- .../SLPVectorizer/X86/peek-through-shuffle.ll | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/llvm/test/Transforms/SLPVectorizer/X86/peek-through-shuffle.ll b/llvm/test/Transforms/SLPVectorizer/X86/peek-through-shuffle.ll index 36cdffc..f9e0e4f 100644 --- a/llvm/test/Transforms/SLPVectorizer/X86/peek-through-shuffle.ll +++ b/llvm/test/Transforms/SLPVectorizer/X86/peek-through-shuffle.ll @@ -1,19 +1,17 @@ ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py -; RUN: opt -S < %s -mtriple=x86_64-unknown-linux-gnu -o - | FileCheck %s +; RUN: opt -S -passes=slp-vectorizer < %s -mtriple=x86_64-unknown-linux-gnu -o - | FileCheck %s define void @foo(ptr %0, <4 x float> %1) { ; CHECK-LABEL: @foo( ; CHECK-NEXT: entry: ; CHECK-NEXT: [[TMP2:%.*]] = getelementptr float, ptr null, i64 22 -; CHECK-NEXT: [[TMP3:%.*]] = load float, ptr [[TMP2]], align 8 -; CHECK-NEXT: [[TMP4:%.*]] = insertelement <4 x float> zeroinitializer, float [[TMP3]], i64 0 -; CHECK-NEXT: [[TMP5:%.*]] = getelementptr float, ptr null, i64 23 -; CHECK-NEXT: [[TMP6:%.*]] = load float, ptr [[TMP5]], align 4 -; CHECK-NEXT: [[TMP7:%.*]] = insertelement <4 x float> [[TMP4]], float [[TMP6]], i64 1 -; CHECK-NEXT: [[TMP8:%.*]] = shufflevector <4 x float> [[TMP1:%.*]], <4 x float> zeroinitializer, <4 x i32> -; CHECK-NEXT: [[TMP9:%.*]] = insertelement <4 x float> [[TMP8]], float [[TMP3]], i64 3 -; CHECK-NEXT: [[TMP10:%.*]] = fpext <4 x float> [[TMP9]] to <4 x double> -; CHECK-NEXT: store <4 x double> [[TMP10]], ptr [[TMP0:%.*]], align 32 +; CHECK-NEXT: [[TMP3:%.*]] = load <2 x float>, ptr [[TMP2]], align 8 +; CHECK-NEXT: [[TMP4:%.*]] = shufflevector <2 x float> [[TMP3]], <2 x float> poison, <4 x i32> +; CHECK-NEXT: [[TMP5:%.*]] = shufflevector <4 x float> zeroinitializer, <4 x float> [[TMP4]], <4 x i32> +; CHECK-NEXT: [[TMP6:%.*]] = shufflevector <4 x float> [[TMP1:%.*]], <4 x float> zeroinitializer, <4 x i32> +; CHECK-NEXT: [[TMP7:%.*]] = shufflevector <4 x float> [[TMP1]], <4 x float> [[TMP4]], <4 x i32> +; CHECK-NEXT: [[TMP8:%.*]] = fpext <4 x float> [[TMP7]] to <4 x double> +; CHECK-NEXT: store <4 x double> [[TMP8]], ptr [[TMP0:%.*]], align 32 ; CHECK-NEXT: ret void ; entry: -- 2.7.4