mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-05 13:26:55 +00:00
Only v1i16 (i.e. _m64) is returned via RAX / RDX.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@65313 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -72,9 +72,11 @@ def RetCC_X86_64_C : CallingConv<[
|
||||
CCIfType<[f32], CCAssignToReg<[XMM0, XMM1]>>,
|
||||
CCIfType<[f64], CCAssignToReg<[XMM0, XMM1]>>,
|
||||
|
||||
// MMX vector types are always returned in RAX. This seems to disagree with
|
||||
// ABI documentation but is bug compatible with gcc.
|
||||
CCIfType<[v8i8, v4i16, v2i32, v1i64, v2f32], CCAssignToReg<[RAX]>>,
|
||||
// MMX vector types are always returned in XMM0 except for v1i64 which is
|
||||
// returned in RAX. This disagrees with ABI documentation but is bug
|
||||
// compatible with gcc.
|
||||
CCIfType<[v1i64], CCAssignToReg<[RAX]>>,
|
||||
CCIfType<[v8i8, v4i16, v2i32, v2f32], CCAssignToReg<[XMM0, XMM1]>>,
|
||||
CCDelegateTo<RetCC_X86Common>
|
||||
]>;
|
||||
|
||||
|
Reference in New Issue
Block a user