[llvm-commits] CVS: llvm/include/llvm/IntrinsicsX86.td
Evan Cheng
evan.cheng at apple.com
Fri Mar 31 13:28:59 PST 2006
Changes in directory llvm/include/llvm:
IntrinsicsX86.td updated: 1.7 -> 1.8
---
Log message:
Added haddp{s|d} and hsubp{s|d} intrinsics.
---
Diffs of the changes: (+19 -0)
IntrinsicsX86.td | 19 +++++++++++++++++++
1 files changed, 19 insertions(+)
Index: llvm/include/llvm/IntrinsicsX86.td
diff -u llvm/include/llvm/IntrinsicsX86.td:1.7 llvm/include/llvm/IntrinsicsX86.td:1.8
--- llvm/include/llvm/IntrinsicsX86.td:1.7 Thu Mar 30 00:21:22 2006
+++ llvm/include/llvm/IntrinsicsX86.td Fri Mar 31 15:28:46 2006
@@ -199,3 +199,22 @@
def int_x86_sse2_pmovmskb_128 : GCCBuiltin<"__builtin_ia32_pmovmskb128">,
Intrinsic<[llvm_int_ty, llvm_v16i8_ty], [InstrNoMem]>;
}
+
+//===----------------------------------------------------------------------===//
+// SSE3
+
+// Horizontal ops.
+let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
+ def int_x86_sse3_hadd_ps : GCCBuiltin<"__builtin_ia32_haddps">,
+ Intrinsic<[llvm_v4f32_ty, llvm_v4f32_ty,
+ llvm_v4f32_ty], [InstrNoMem]>;
+ def int_x86_sse3_hadd_pd : GCCBuiltin<"__builtin_ia32_haddpd">,
+ Intrinsic<[llvm_v2f64_ty, llvm_v2f64_ty,
+ llvm_v2f64_ty], [InstrNoMem]>;
+ def int_x86_sse3_hsub_ps : GCCBuiltin<"__builtin_ia32_hsubps">,
+ Intrinsic<[llvm_v4f32_ty, llvm_v4f32_ty,
+ llvm_v4f32_ty], [InstrNoMem]>;
+ def int_x86_sse3_hsub_pd : GCCBuiltin<"__builtin_ia32_hsubpd">,
+ Intrinsic<[llvm_v2f64_ty, llvm_v2f64_ty,
+ llvm_v2f64_ty], [InstrNoMem]>;
+}
More information about the llvm-commits
mailing list