[ARM] Unique some redundant CHECK lines. NFC.

llvm-svn: 294817
This commit is contained in:
Ahmed Bougacha 2017-02-11 01:52:57 +00:00
parent 08d6a3f133
commit f37fb89edc
1 changed files with 22 additions and 41 deletions

View File

@ -1,5 +1,5 @@
; RUN: opt < %s -mattr=+neon -interleaved-access -S | FileCheck %s -check-prefix=NEON
; RUN: opt < %s -interleaved-access -S | FileCheck %s -check-prefix=NO_NEON
; RUN: opt < %s -mattr=+neon -interleaved-access -S | FileCheck %s -check-prefixes=NEON,ALL
; RUN: opt < %s -interleaved-access -S | FileCheck %s -check-prefixes=NO_NEON,ALL
target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-n32-S64"
target triple = "arm---eabi"
@ -388,12 +388,9 @@ define void @store_address_space(<4 x i32> addrspace(1)* %ptr, <2 x i32> %v0, <2
}
define void @load_illegal_factor2(<3 x float>* %ptr) nounwind {
; NEON-LABEL: @load_illegal_factor2(
; NEON-NOT: @llvm.arm.neon
; NEON: ret void
; NO_NEON-LABEL: @load_illegal_factor2(
; NO_NEON-NOT: @llvm.arm.neon
; NO_NEON: ret void
; ALL-LABEL: @load_illegal_factor2(
; ALL-NOT: @llvm.arm.neon
; ALL: ret void
;
%interleaved.vec = load <3 x float>, <3 x float>* %ptr, align 16
%v0 = shufflevector <3 x float> %interleaved.vec, <3 x float> undef, <3 x i32> <i32 0, i32 2, i32 undef>
@ -401,12 +398,9 @@ define void @load_illegal_factor2(<3 x float>* %ptr) nounwind {
}
define void @store_illegal_factor2(<3 x float>* %ptr, <3 x float> %v0) nounwind {
; NEON-LABEL: @store_illegal_factor2(
; NEON-NOT: @llvm.arm.neon
; NEON: ret void
; NO_NEON-LABEL: @store_illegal_factor2(
; NO_NEON-NOT: @llvm.arm.neon
; NO_NEON: ret void
; ALL-LABEL: @store_illegal_factor2(
; ALL-NOT: @llvm.arm.neon
; ALL: ret void
;
%interleaved.vec = shufflevector <3 x float> %v0, <3 x float> undef, <3 x i32> <i32 0, i32 2, i32 undef>
store <3 x float> %interleaved.vec, <3 x float>* %ptr, align 16
@ -538,12 +532,9 @@ define void @store_general_mask_factor3_undefmultimid(<12 x i32>* %ptr, <32 x i3
}
define void @store_general_mask_factor3_undef_fail(<12 x i32>* %ptr, <32 x i32> %v0, <32 x i32> %v1) {
; NEON-LABEL: @store_general_mask_factor3_undef_fail(
; NEON-NOT: @llvm.arm.neon
; NEON: ret void
; NO_NEON-LABEL: @store_general_mask_factor3_undef_fail(
; NO_NEON-NOT: @llvm.arm.neon
; NO_NEON: ret void
; ALL-LABEL: @store_general_mask_factor3_undef_fail(
; ALL-NOT: @llvm.arm.neon
; ALL: ret void
;
%interleaved.vec = shufflevector <32 x i32> %v0, <32 x i32> %v1, <12 x i32> <i32 4, i32 32, i32 16, i32 undef, i32 33, i32 17, i32 undef, i32 34, i32 18, i32 8, i32 35, i32 19>
store <12 x i32> %interleaved.vec, <12 x i32>* %ptr, align 4
@ -568,12 +559,9 @@ define void @store_general_mask_factor3_undeflane(<12 x i32>* %ptr, <32 x i32> %
}
define void @store_general_mask_factor3_endstart_fail(<12 x i32>* %ptr, <32 x i32> %v0, <32 x i32> %v1) {
; NEON-LABEL: @store_general_mask_factor3_endstart_fail(
; NEON-NOT: @llvm.arm.neon
; NEON: ret void
; NO_NEON-LABEL: @store_general_mask_factor3_endstart_fail(
; NO_NEON-NOT: @llvm.arm.neon
; NO_NEON: ret void
; ALL-LABEL: @store_general_mask_factor3_endstart_fail(
; ALL-NOT: @llvm.arm.neon
; ALL: ret void
;
%interleaved.vec = shufflevector <32 x i32> %v0, <32 x i32> %v1, <12 x i32> <i32 undef, i32 32, i32 16, i32 undef, i32 33, i32 17, i32 undef, i32 34, i32 18, i32 2, i32 35, i32 19>
store <12 x i32> %interleaved.vec, <12 x i32>* %ptr, align 4
@ -598,12 +586,9 @@ define void @store_general_mask_factor3_endstart_pass(<12 x i32>* %ptr, <32 x i3
}
define void @store_general_mask_factor3_midstart_fail(<12 x i32>* %ptr, <32 x i32> %v0, <32 x i32> %v1) {
; NEON-LABEL: @store_general_mask_factor3_midstart_fail(
; NEON-NOT: @llvm.arm.neon
; NEON: ret void
; NO_NEON-LABEL: @store_general_mask_factor3_midstart_fail(
; NO_NEON-NOT: @llvm.arm.neon
; NO_NEON: ret void
; ALL-LABEL: @store_general_mask_factor3_midstart_fail(
; ALL-NOT: @llvm.arm.neon
; ALL: ret void
;
%interleaved.vec = shufflevector <32 x i32> %v0, <32 x i32> %v1, <12 x i32> <i32 undef, i32 32, i32 16, i32 0, i32 33, i32 17, i32 undef, i32 34, i32 18, i32 undef, i32 35, i32 19>
store <12 x i32> %interleaved.vec, <12 x i32>* %ptr, align 4
@ -630,15 +615,11 @@ define void @store_general_mask_factor3_midstart_pass(<12 x i32>* %ptr, <32 x i3
@g = external global <4 x float>
; The following does not give a valid interleaved store
; NEON-LABEL: define void @no_interleave
; NEON-NOT: call void @llvm.arm.neon.vst2
; NEON: shufflevector
; NEON: store
; NEON: ret void
; NO_NEON-LABEL: define void @no_interleave
; NO_NEON: shufflevector
; NO_NEON: store
; NO_NEON: ret void
; ALL-LABEL: define void @no_interleave
; ALL-NOT: call void @llvm.arm.neon.vst2
; ALL: shufflevector
; ALL: store
; ALL: ret void
define void @no_interleave(<4 x float> %a0) {
%v0 = shufflevector <4 x float> %a0, <4 x float> %a0, <4 x i32> <i32 0, i32 7, i32 1, i32 undef>
store <4 x float> %v0, <4 x float>* @g, align 16