From 11ae95c175fbbee3e38d6ddb8b9f39f88fe8988b Mon Sep 17 00:00:00 2001 From: Bruno Cardoso Lopes Date: Sat, 12 Jun 2010 02:38:32 +0000 Subject: [PATCH] Add some basic fp intrinsics for AVX git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105873 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/X86/X86InstrSSE.td | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/lib/Target/X86/X86InstrSSE.td b/lib/Target/X86/X86InstrSSE.td index 867536d5315..895a5d2a52b 100644 --- a/lib/Target/X86/X86InstrSSE.td +++ b/lib/Target/X86/X86InstrSSE.td @@ -785,6 +785,22 @@ multiclass basic_sse12_fp_binop_rm opc, string OpcodeStr, } // Intrinsic operation, reg+reg. + def V#NAME#SSrr_Int : VSSI("int_x86_sse_", + !strconcat(OpcodeStr, "_ss")) VR128:$src1, + VR128:$src2))]>; + // int_x86_sse_xxx_ss + + def V#NAME#SDrr_Int : VSDI("int_x86_sse2_", + !strconcat(OpcodeStr, "_sd")) VR128:$src1, + VR128:$src2))]>; + // int_x86_sse2_xxx_sd + def SSrr_Int : SSI opc, string OpcodeStr, // int_x86_sse2_xxx_sd // Intrinsic operation, reg+mem. + def V#NAME#SSrm_Int : VSSI("int_x86_sse_", + !strconcat(OpcodeStr, "_ss")) VR128:$src1, + sse_load_f32:$src2))]>; + // int_x86_sse_xxx_ss + + def V#NAME#SDrm_Int : VSDI("int_x86_sse2_", + !strconcat(OpcodeStr, "_sd")) VR128:$src1, + sse_load_f64:$src2))]>; + // int_x86_sse2_xxx_sd + def SSrm_Int : SSI