1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-09 03:52:19 +02:00

Win32 lowering fixes

This commit is contained in:
Brian Fiete 2020-12-28 10:50:04 -08:00
parent a8d4d085c2
commit 91b046b6d7
4 changed files with 152 additions and 61 deletions

View file

@ -3700,8 +3700,13 @@ void BfModule::DoPopulateType(BfType* resolvedTypeRef, BfPopulateType populateTy
splatIterate(typeInstance);
if (isCRepr)
{
typeInstance->mIsSplattable = false;
{
if ((mCompiler->mOptions.mMachineType == BfMachineType_x86) && (mCompiler->mOptions.mPlatformType == BfPlatformType_Windows))
{
typeInstance->mIsSplattable = (dataCount <= 4) && (!hadNonSplattable) && (dataPos > 4);
}
else
typeInstance->mIsSplattable = false;
}
else
typeInstance->mIsSplattable = (dataCount <= 3) && (!hadNonSplattable);