[llvm-commits] [llvm] r74958 - /llvm/trunk/include/llvm/IntrinsicsARM.td

Bob Wilson bob.wilson at apple.com
Tue Jul 7 15:27:20 PDT 2009


Author: bwilson
Date: Tue Jul  7 17:27:20 2009
New Revision: 74958

URL: http://llvm.org/viewvc/llvm-project?rev=74958&view=rev
Log:
Change NEON vldN/vstN intrinsics to specify "N" as an immediate operand
instead of having a separate intrinsic for each value.

Modified:
    llvm/trunk/include/llvm/IntrinsicsARM.td

Modified: llvm/trunk/include/llvm/IntrinsicsARM.td
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/IntrinsicsARM.td?rev=74958&r1=74957&r2=74958&view=diff

==============================================================================
--- llvm/trunk/include/llvm/IntrinsicsARM.td (original)
+++ llvm/trunk/include/llvm/IntrinsicsARM.td Tue Jul  7 17:27:20 2009
@@ -291,28 +291,20 @@
 let TargetPrefix = "arm" in {
 
   // De-interleaving vector loads from N-element structures.
-  def int_arm_neon_vld3i : Intrinsic<[llvm_anyint_ty],
-                                     [llvm_ptr_ty], [IntrReadArgMem]>;
-  def int_arm_neon_vld3f : Intrinsic<[llvm_anyfloat_ty],
-                                     [llvm_ptr_ty], [IntrReadArgMem]>;
-  def int_arm_neon_vld4i : Intrinsic<[llvm_anyint_ty],
-                                     [llvm_ptr_ty], [IntrReadArgMem]>;
-  def int_arm_neon_vld4f : Intrinsic<[llvm_anyfloat_ty],
-                                     [llvm_ptr_ty], [IntrReadArgMem]>;
+  def int_arm_neon_vldi : Intrinsic<[llvm_anyint_ty],
+                                    [llvm_ptr_ty, llvm_i32_ty],
+                                    [IntrReadArgMem]>;
+  def int_arm_neon_vldf : Intrinsic<[llvm_anyfloat_ty],
+                                    [llvm_ptr_ty, llvm_i32_ty],
+                                    [IntrReadArgMem]>;
 
   // Interleaving vector stores from N-element structures.
-  def int_arm_neon_vst3i : Intrinsic<[llvm_void_ty],
-                                     [llvm_ptr_ty, llvm_anyint_ty],
-                                     [IntrWriteArgMem]>;
-  def int_arm_neon_vst3f : Intrinsic<[llvm_void_ty],
-                                     [llvm_ptr_ty, llvm_anyfloat_ty],
-                                     [IntrWriteArgMem]>;
-  def int_arm_neon_vst4i : Intrinsic<[llvm_void_ty],
-                                     [llvm_ptr_ty, llvm_anyint_ty],
-                                     [IntrWriteArgMem]>;
-  def int_arm_neon_vst4f : Intrinsic<[llvm_void_ty],
-                                     [llvm_ptr_ty, llvm_anyfloat_ty],
-                                     [IntrWriteArgMem]>;
+  def int_arm_neon_vsti : Intrinsic<[llvm_void_ty],
+                                    [llvm_ptr_ty, llvm_anyint_ty, llvm_i32_ty],
+                                    [IntrWriteArgMem]>;
+  def int_arm_neon_vstf : Intrinsic<[llvm_void_ty],
+                                    [llvm_ptr_ty, llvm_anyfloat_ty,llvm_i32_ty],
+                                    [IntrWriteArgMem]>;
 
   // Vector Table Lookup
   def int_arm_neon_vtbl : Intrinsic<[llvm_v8i8_ty],





More information about the llvm-commits mailing list