aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2010-09-01 21:03:03 +0000
committerDale Johannesen <dalej@apple.com>2010-09-01 21:03:03 +0000
commit973ddaa088abdfb21921d40a0e8ac15c4e356a26 (patch)
tree7607b149c70b137feef2f9caf0283368ebb90cdb
parentbe996931274f1965b4da7ab06a94b141841c4c8f (diff)
downloadllvm-973ddaa088abdfb21921d40a0e8ac15c4e356a26.zip
llvm-973ddaa088abdfb21921d40a0e8ac15c4e356a26.tar.gz
llvm-973ddaa088abdfb21921d40a0e8ac15c4e356a26.tar.bz2
Add a few more missing MMX operations. This should be it.
llvm-svn: 112740
-rw-r--r--llvm/include/llvm/IntrinsicsX86.td23
1 files changed, 17 insertions, 6 deletions
diff --git a/llvm/include/llvm/IntrinsicsX86.td b/llvm/include/llvm/IntrinsicsX86.td
index ced5d8e..dbf7cfbb 100644
--- a/llvm/include/llvm/IntrinsicsX86.td
+++ b/llvm/include/llvm/IntrinsicsX86.td
@@ -630,6 +630,9 @@ let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
def int_x86_ssse3_pshuf_b_128 : GCCBuiltin<"__builtin_ia32_pshufb128">,
Intrinsic<[llvm_v16i8_ty], [llvm_v16i8_ty,
llvm_v16i8_ty], [IntrNoMem]>;
+ def int_x86_ssse3_pshuf_w : GCCBuiltin<"__builtin_ia32_pshufw">,
+ Intrinsic<[llvm_v4i16_ty], [llvm_v4i16_ty, llvm_i32_ty],
+ [IntrNoMem]>;
}
// Sign ops
@@ -1567,12 +1570,20 @@ let TargetPrefix = "x86" in { // All intrinsics start with "llvm.x86.".
def int_x86_mmx_movnt_dq : GCCBuiltin<"__builtin_ia32_movntq">,
Intrinsic<[], [llvm_ptr_ty, llvm_v1i64_ty], []>;
- def int_x86_mmx_cvtsi32_MMX : GCCBuiltin<"__builtin_ia32_vec_init_v2si">,
+ def int_x86_mmx_palignr_b : GCCBuiltin<"__builtin_ia32_palignr">,
+ Intrinsic<[llvm_v1i64_ty], [llvm_v1i64_ty,
+ llvm_v1i64_ty, llvm_i32_ty], [IntrNoMem]>;
+
+ def int_x86_mmx_pextr_w :
+ Intrinsic<[llvm_i32_ty], [llvm_v1i64_ty, llvm_i32_ty],
+ [IntrNoMem]>;
+
+ def int_x86_mmx_pinsr_w :
+ Intrinsic<[llvm_v1i64_ty], [llvm_v1i64_ty,
+ llvm_i32_ty, llvm_i32_ty], [IntrNoMem]>;
+
+ def int_x86_mmx_cvtsi32_si64 : GCCBuiltin<"__builtin_ia32_vec_init_v2si">,
Intrinsic<[llvm_v1i64_ty], [llvm_i32_ty], [IntrNoMem]>;
- def int_x86_mmx_cvtsi64_MMX :
- Intrinsic<[llvm_v1i64_ty], [llvm_i64_ty], [IntrNoMem]>;
- def int_x86_mmx_MMX_si32 : GCCBuiltin<"__builtin_ia32_vec_ext_v2si">,
+ def int_x86_mmx_cvtsi64_si32 : GCCBuiltin<"__builtin_ia32_vec_ext_v2si">,
Intrinsic<[llvm_i32_ty], [llvm_v1i64_ty], [IntrNoMem]>;
- def int_x86_mmx_MMX_si64 :
- Intrinsic<[llvm_i64_ty], [llvm_v1i64_ty], [IntrNoMem]>;
}