diff options
author | Bob Wilson <bob.wilson@apple.com> | 2010-11-01 18:31:39 +0000 |
---|---|---|
committer | Bob Wilson <bob.wilson@apple.com> | 2010-11-01 18:31:39 +0000 |
commit | 24645a1a6d317acfc16303237704f32364fb2f0f (patch) | |
tree | 0767f6c6fa95f8764e2da59544ae5e58ec88fff6 /test/CodeGen/ARM | |
parent | 4845f990081d466ad193d90d1cd6f1d0eb910309 (diff) | |
download | external_llvm-24645a1a6d317acfc16303237704f32364fb2f0f.zip external_llvm-24645a1a6d317acfc16303237704f32364fb2f0f.tar.gz external_llvm-24645a1a6d317acfc16303237704f32364fb2f0f.tar.bz2 |
NEON does not support truncating vector stores. Radar 8598391.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117940 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/ARM')
-rw-r--r-- | test/CodeGen/ARM/vmov.ll | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/test/CodeGen/ARM/vmov.ll b/test/CodeGen/ARM/vmov.ll index 4d654d7..a86be32 100644 --- a/test/CodeGen/ARM/vmov.ll +++ b/test/CodeGen/ARM/vmov.ll @@ -343,3 +343,13 @@ declare <2 x i32> @llvm.arm.neon.vqmovnu.v2i32(<2 x i64>) nounwind readnone declare <8 x i8> @llvm.arm.neon.vqmovnsu.v8i8(<8 x i16>) nounwind readnone declare <4 x i16> @llvm.arm.neon.vqmovnsu.v4i16(<4 x i32>) nounwind readnone declare <2 x i32> @llvm.arm.neon.vqmovnsu.v2i32(<2 x i64>) nounwind readnone + +; Truncating vector stores are not supported. The following should not crash. +; Radar 8598391. +define void @noTruncStore(<4 x i32>* %a, <4 x i16>* %b) nounwind { +;CHECK: vmovn + %tmp1 = load <4 x i32>* %a, align 16 + %tmp2 = trunc <4 x i32> %tmp1 to <4 x i16> + store <4 x i16> %tmp2, <4 x i16>* %b, align 8 + ret void +} |