LoopVectorizer: Bail out if we don't have datalayout we need it
authorArnold Schwaighofer <aschwaighofer@apple.com>
Wed, 24 Apr 2013 16:15:58 +0000 (16:15 +0000)
committerArnold Schwaighofer <aschwaighofer@apple.com>
Wed, 24 Apr 2013 16:15:58 +0000 (16:15 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180195 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Vectorize/LoopVectorize.cpp
test/Transforms/LoopVectorize/X86/constant-vector-operand.ll
test/Transforms/LoopVectorize/bsd_regex.ll
test/Transforms/LoopVectorize/minmax_reduction.ll

index 0988a4032fd5b451db51ce7cd4987caea2ce5152..ac0925df2a09d0f9dbffe480a9b2fba4dbd9d12e 100644 (file)
@@ -707,6 +707,11 @@ struct LoopVectorize : public LoopPass {
     AA = getAnalysisIfAvailable<AliasAnalysis>();
     TLI = getAnalysisIfAvailable<TargetLibraryInfo>();
 
+    if (DL == NULL) {
+      DEBUG(dbgs() << "LV: Not vectorizing because of missing data layout");
+      return false;
+    }
+
     DEBUG(dbgs() << "LV: Checking a loop in \"" <<
           L->getHeader()->getParent()->getName() << "\"\n");
 
index 6c924409af3720138e5ec0b7122455c77dd6340a..f4c07b4b24d9d133b2030cb19e62950b838489ab 100644 (file)
@@ -1,5 +1,7 @@
 ; RUN: opt -mtriple=x86_64-apple-darwin -mcpu=core2 -loop-vectorize -dce -instcombine -S < %s | FileCheck %s
 
+target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
+
 @B = common global [1024 x i32] zeroinitializer, align 16
 @A = common global [1024 x i32] zeroinitializer, align 16
 
index a2aef1c368fbf10136f6ee81c6f535e6cce81486..a14b92d229b454cca8ac1f796ea4025d17f2b2b6 100644 (file)
@@ -1,5 +1,7 @@
 ; RUN: opt -S -loop-vectorize -dce -instcombine -force-vector-width=2 -force-vector-unroll=2 < %s | FileCheck %s
 
+target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
+
 ;PR 15830.
 
 ;CHECK: foo
index 90c45bbc669665426704d8c7fda011c62e6f2e7a..99dd09386f5d52ed718a69d2506e911ab504108d 100644 (file)
@@ -1,4 +1,7 @@
-; RUN: opt -S -loop-vectorize -dce -instcombine -force-vector-width=2 -force-vector-unroll=1 < %s | FileCheck %s
+; RUN: opt -S -loop-vectorize -dce -instcombine -force-vector-width=2 -force-vector-unroll=1  < %s | FileCheck %s
+
+target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64-S128"
+
 @A = common global [1024 x i32] zeroinitializer, align 16
 
 ; Signed tests.