From: Anton Korobeynikov Date: Mon, 28 Apr 2008 07:40:07 +0000 (+0000) Subject: Fix FP return for Win64 ABI X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=2810d675f855133cad90c14d725d9ac0704f4923;p=oota-llvm.git Fix FP return for Win64 ABI git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50342 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/X86/X86CallingConv.td b/lib/Target/X86/X86CallingConv.td index e32a891eba1..60ee0a1bd33 100644 --- a/lib/Target/X86/X86CallingConv.td +++ b/lib/Target/X86/X86CallingConv.td @@ -83,6 +83,10 @@ def RetCC_X86_Win64_C : CallingConv<[ // The X86-Win64 calling convention always returns __m64 values in RAX. CCIfType<[v8i8, v4i16, v2i32, v1i64], CCAssignToReg<[RAX]>>, + // And FP in XMM0 only. + CCIfType<[f32], CCAssignToReg<[XMM0]>>, + CCIfType<[f64], CCAssignToReg<[XMM0]>>, + // Otherwise, everything is the same as 'normal' X86-64 C CC. CCDelegateTo ]>;