mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-14 11:32:34 +00:00
Implement the SVR4 byval alignment for aggregates. Fixing a FIXME.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153876 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
545b962f15
commit
466958c2a0
@ -446,7 +446,16 @@ unsigned PPCTargetLowering::getByValTypeAlignment(Type *Ty) const {
|
||||
// Darwin passes everything on 4 byte boundary.
|
||||
if (TM.getSubtarget<PPCSubtarget>().isDarwin())
|
||||
return 4;
|
||||
// FIXME SVR4 TBD
|
||||
|
||||
// 16byte and wider vectors are passed on 16byte boundary.
|
||||
if (VectorType *VTy = dyn_cast<VectorType>(Ty))
|
||||
if (VTy->getBitWidth() >= 128)
|
||||
return 16;
|
||||
|
||||
// The rest is 8 on PPC64 and 4 on PPC32 boundary.
|
||||
if (PPCSubTarget.isPPC64())
|
||||
return 8;
|
||||
|
||||
return 4;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user