diff options
author | Hal Finkel <hfinkel@anl.gov> | 2015-03-31 20:56:09 +0000 |
---|---|---|
committer | Hal Finkel <hfinkel@anl.gov> | 2015-03-31 20:56:09 +0000 |
commit | 52368d4437b9d937698703091e346f1cc2e94868 (patch) | |
tree | 0a53a0088cbf4640908b0236fd4ac22843a87f3c /llvm/test/CodeGen/PowerPC/memset-nc.ll | |
parent | 1988ac60a673761063cee407cbc27a403242a0f5 (diff) | |
download | bcm5719-llvm-52368d4437b9d937698703091e346f1cc2e94868.tar.gz bcm5719-llvm-52368d4437b9d937698703091e346f1cc2e94868.zip |
[PowerPC] Don't use a vector preferred memory type at -O0
Even at -O0, we fall back to SDAG when we hit intrinsics, and if the intrinsic
is a memset/memcpy/etc. we might normally use vector types. At -O0, this is
probably not a good idea (because, if there is a bug in the lowering code,
there would be no good way to turn it off). At -O0, only use scalar preferred
types.
Related to PR22754.
llvm-svn: 233755
Diffstat (limited to 'llvm/test/CodeGen/PowerPC/memset-nc.ll')
-rw-r--r-- | llvm/test/CodeGen/PowerPC/memset-nc.ll | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/PowerPC/memset-nc.ll b/llvm/test/CodeGen/PowerPC/memset-nc.ll index 46341be1c40..414a987a56f 100644 --- a/llvm/test/CodeGen/PowerPC/memset-nc.ll +++ b/llvm/test/CodeGen/PowerPC/memset-nc.ll @@ -1,4 +1,5 @@ ; RUN: llc < %s | FileCheck %s +; RUN: llc -O0 < %s | FileCheck %s -check-prefix=CHECK-O0 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-f128:128:128-v128:128:128-n32:64" target triple = "powerpc64-bgq-linux" @@ -14,6 +15,10 @@ entry: ; CHECK: qvstfdx ; CHECK: qvstfdx ; CHECK: blr + +; CHECK-O0-LABEL: @test_qpx +; CHECK-O0-NOT: qvstfdx +; CHECK-O0: blr } ; Function Attrs: nounwind @@ -31,6 +36,10 @@ entry: ; CHECK: stxvw4x ; CHECK: stxvw4x ; CHECK: blr + +; CHECK-O0-LABEL: @test_vsx +; CHECK-O0-NOT: stxvw4x +; CHECK-O0: blr } attributes #0 = { nounwind "target-cpu"="a2q" } |