mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-07 14:33:15 +00:00
R600/SI: Support byval arguments
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192555 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
f2b3a569ae
commit
6a809a8d29
@ -33,7 +33,12 @@ def CC_SI : CallingConv<[
|
||||
VGPR8, VGPR9, VGPR10, VGPR11, VGPR12, VGPR13, VGPR14, VGPR15,
|
||||
VGPR16, VGPR17, VGPR18, VGPR19, VGPR20, VGPR21, VGPR22, VGPR23,
|
||||
VGPR24, VGPR25, VGPR26, VGPR27, VGPR28, VGPR29, VGPR30, VGPR31
|
||||
]>>>
|
||||
]>>>,
|
||||
|
||||
CCIfByVal<CCIfType<[i64] , CCAssignToRegWithShadow<
|
||||
[ SGPR0, SGPR2, SGPR4, SGPR6, SGPR8, SGPR10, SGPR12, SGPR14 ],
|
||||
[ SGPR1, SGPR3, SGPR5, SGPR7, SGPR9, SGPR11, SGPR13, SGPR15 ]
|
||||
>>>
|
||||
|
||||
]>;
|
||||
|
||||
|
@ -158,7 +158,8 @@ SDValue SITargetLowering::LowerFormalArguments(
|
||||
const ISD::InputArg &Arg = Ins[i];
|
||||
|
||||
// First check if it's a PS input addr
|
||||
if (Info->ShaderType == ShaderType::PIXEL && !Arg.Flags.isInReg()) {
|
||||
if (Info->ShaderType == ShaderType::PIXEL && !Arg.Flags.isInReg() &&
|
||||
!Arg.Flags.isByVal()) {
|
||||
|
||||
assert((PSInputNum <= 15) && "Too many PS inputs!");
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user