]> granicus.if.org Git - clang/commitdiff
Add support for "_lane" variants of VMUL, VMLA, and VMLS Neon intrinsics.
authorBob Wilson <bob.wilson@apple.com>
Fri, 3 Dec 2010 00:34:21 +0000 (00:34 +0000)
committerBob Wilson <bob.wilson@apple.com>
Fri, 3 Dec 2010 00:34:21 +0000 (00:34 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@120765 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Basic/arm_neon.td

index e1e7bb811210b5b6d464ec0c39e4c302f332644d..32bffb711798e3f9dad4145be0f76b57fb9d9547 100644 (file)
@@ -23,6 +23,9 @@ def OP_MLS   : Op;
 def OP_MUL_N : Op;
 def OP_MLA_N : Op;
 def OP_MLS_N : Op;
+def OP_MUL_LN: Op;
+def OP_MLA_LN: Op;
+def OP_MLS_LN: Op;
 def OP_EQ    : Op;
 def OP_GE    : Op;
 def OP_LE    : Op;
@@ -282,13 +285,14 @@ def VTBX4 : WInst<"dd4t", "UccPc">;
 
 ////////////////////////////////////////////////////////////////////////////////
 // E.3.25 Operations with a scalar value
-def VMLA_LANE     : IInst<"ddddi", "siUsUifQsQiQUsQUiQf">;
+def VMLA_LANE     : Inst<"ddddi",  "siUsUifQsQiQUsQUiQf", OP_MLA_LN>;
 def VMLAL_LANE    : SInst<"wwddi", "siUsUi">;
 def VQDMLAL_LANE  : SInst<"wwddi", "si">; 
-def VMLS_LANE     : IInst<"ddddi", "siUsUifQsQiQUsQUiQf">;
+def VMLS_LANE     : Inst<"ddddi",  "siUsUifQsQiQUsQUiQf", OP_MLS_LN>;
 def VMLSL_LANE    : SInst<"wwddi", "siUsUi">;
 def VQDMLSL_LANE  : SInst<"wwddi", "si">;
 def VMUL_N        : Inst<"dds",    "sifUsUiQsQiQfQUsQUi", OP_MUL_N>;
+def VMUL_LANE     : Inst<"dddi",   "sifUsUiQsQiQfQUsQUi", OP_MUL_LN>;
 def VMULL_N       : SInst<"wda",   "siUsUi">;
 def VMULL_LANE    : SInst<"wddi",  "siUsUi">;
 def VQDMULL_N     : SInst<"wda",   "si">;