diff options
author | Nadav Rotem <nrotem@apple.com> | 2013-07-12 06:09:24 +0000 |
---|---|---|
committer | Nadav Rotem <nrotem@apple.com> | 2013-07-12 06:09:24 +0000 |
commit | 523cd85b50c3081d9859fe41afadce13c43e1bc9 (patch) | |
tree | 0d98a3e35e5c9b5903263ba6878b2d519e78a280 /test/Transforms/SLPVectorizer/X86 | |
parent | ac226bbf457f6b5e5210a4a82b1ce678298b2d89 (diff) | |
download | external_llvm-523cd85b50c3081d9859fe41afadce13c43e1bc9.zip external_llvm-523cd85b50c3081d9859fe41afadce13c43e1bc9.tar.gz external_llvm-523cd85b50c3081d9859fe41afadce13c43e1bc9.tar.bz2 |
SLPVectorizer: Sink and enable CSE for ExtractElements.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@186145 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/SLPVectorizer/X86')
-rw-r--r-- | test/Transforms/SLPVectorizer/X86/diamond.ll | 4 | ||||
-rw-r--r-- | test/Transforms/SLPVectorizer/X86/external_user.ll | 2 | ||||
-rw-r--r-- | test/Transforms/SLPVectorizer/X86/rgb_phi.ll | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/test/Transforms/SLPVectorizer/X86/diamond.ll b/test/Transforms/SLPVectorizer/X86/diamond.ll index 2a237ea..099f7cf 100644 --- a/test/Transforms/SLPVectorizer/X86/diamond.ll +++ b/test/Transforms/SLPVectorizer/X86/diamond.ll @@ -51,8 +51,8 @@ entry: ; CHECK: @extr_user ; CHECK: load <4 x i32> -; CHECK-NEXT: extractelement <4 x i32> ; CHECK: store <4 x i32> +; CHECK: extractelement <4 x i32> ; CHECK-NEXT: ret define i32 @extr_user(i32* noalias nocapture %B, i32* noalias nocapture %A, i32 %n, i32 %m) { entry: @@ -81,8 +81,8 @@ entry: ; In this example we have an external user that is not the first element in the vector. ; CHECK: @extr_user1 ; CHECK: load <4 x i32> -; CHECK-NEXT: extractelement <4 x i32> ; CHECK: store <4 x i32> +; CHECK: extractelement <4 x i32> ; CHECK-NEXT: ret define i32 @extr_user1(i32* noalias nocapture %B, i32* noalias nocapture %A, i32 %n, i32 %m) { entry: diff --git a/test/Transforms/SLPVectorizer/X86/external_user.ll b/test/Transforms/SLPVectorizer/X86/external_user.ll index 7f032b5..22f0e64 100644 --- a/test/Transforms/SLPVectorizer/X86/external_user.ll +++ b/test/Transforms/SLPVectorizer/X86/external_user.ll @@ -26,9 +26,9 @@ target triple = "x86_64-apple-macosx10.8.0" ;CHECK: phi <2 x double> ;CHECK: fadd <2 x double> ;CHECK: fmul <2 x double> -;CHECK: extractelement <2 x double> ;CHECK: br ;CHECK: store <2 x double> +;CHECK: extractelement <2 x double> ;CHECK: ret double define double @ext_user(double* noalias nocapture %B, double* noalias nocapture %A, i32 %n, i32 %m) { diff --git a/test/Transforms/SLPVectorizer/X86/rgb_phi.ll b/test/Transforms/SLPVectorizer/X86/rgb_phi.ll index 6a92435..9f5a621 100644 --- a/test/Transforms/SLPVectorizer/X86/rgb_phi.ll +++ b/test/Transforms/SLPVectorizer/X86/rgb_phi.ll @@ -23,10 +23,10 @@ target triple = "i386-apple-macosx10.9.0" ;CHECK: fmul <3 x float> ;CHECK: fadd <3 x float> ; At the moment we don't sink extractelements. +;CHECK: br ;CHECK: extractelement ;CHECK: extractelement ;CHECK: extractelement -;CHECK: br ;CHECK: ret define float @foo(float* nocapture readonly %A) { |