Remove NEON vmovn intrinsic, replacing it with vector truncate operations.

Auto-upgrade the old intrinsic and update tests.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112507 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Bob Wilson
2010-08-30 20:02:30 +00:00
parent 663e339e20
commit 973a074345
6 changed files with 51 additions and 11 deletions
+14
View File
@@ -76,6 +76,20 @@
; CHECK: zext <4 x i16>
; CHECK-NEXT: sub <4 x i32>
; vmovn should be auto-upgraded to trunc
; CHECK: vmovni16
; CHECK-NOT: arm.neon.vmovn.v8i8
; CHECK: trunc <8 x i16>
; CHECK: vmovni32
; CHECK-NOT: arm.neon.vmovn.v4i16
; CHECK: trunc <4 x i32>
; CHECK: vmovni64
; CHECK-NOT: arm.neon.vmovn.v2i32
; CHECK: trunc <2 x i64>
; vld* and vst* intrinsic calls need an alignment argument (defaulted to 1)
; CHECK: vld1i8
Binary file not shown.