mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-08-10 02:25:47 +00:00
Allow XMM2 and XMM3 to be used for non ABI compliant code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59720 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -28,10 +28,11 @@ def RetCC_X86Common : CallingConv<[
|
|||||||
CCIfType<[i32], CCAssignToReg<[EAX, EDX]>>,
|
CCIfType<[i32], CCAssignToReg<[EAX, EDX]>>,
|
||||||
CCIfType<[i64], CCAssignToReg<[RAX, RDX]>>,
|
CCIfType<[i64], CCAssignToReg<[RAX, RDX]>>,
|
||||||
|
|
||||||
// Vector types are returned in XMM0 and XMM1, when they fit. If the target
|
// Vector types are returned in XMM0 and XMM1, when they fit. XMMM2 and XMM3
|
||||||
// doesn't have XMM registers, it won't have vector types.
|
// can only be used by ABI non-compliant code. If the target doesn't have XMM
|
||||||
|
// registers, it won't have vector types.
|
||||||
CCIfType<[v16i8, v8i16, v4i32, v2i64, v4f32, v2f64],
|
CCIfType<[v16i8, v8i16, v4i32, v2i64, v4f32, v2f64],
|
||||||
CCAssignToReg<[XMM0,XMM1]>>,
|
CCAssignToReg<[XMM0,XMM1,XMM2,XMM3]>>,
|
||||||
|
|
||||||
// MMX vector types are always returned in MM0. If the target doesn't have
|
// MMX vector types are always returned in MM0. If the target doesn't have
|
||||||
// MM0, it doesn't support these vector types.
|
// MM0, it doesn't support these vector types.
|
||||||
|
Reference in New Issue
Block a user