return (TARGET_POINTER_SIZE * this->numSlots);
}
- __declspec(property(get = GetHfaType)) var_types hfaType;
var_types GetHfaType()
{
#ifdef FEATURE_HFA
{
#ifdef _TARGET_ARM_
// We counted the number of regs, but if they are DOUBLE hfa regs we have to double the size.
- if (hfaType == TYP_DOUBLE)
+ if (GetHfaType() == TYP_DOUBLE)
{
assert(!isSplit);
size <<= 1;
#elif defined(_TARGET_ARM64_)
// We counted the number of regs, but if they are FLOAT hfa regs we have to halve the size,
// or if they are SIMD16 vector hfa regs we have to double the size.
- if (hfaType == TYP_FLOAT)
+ if (GetHfaType() == TYP_FLOAT)
{
// Round up in case of odd HFA count.
size = (size + 1) >> 1;
}
#ifdef FEATURE_SIMD
- else if (hfaType == TYP_SIMD16)
+ else if (GetHfaType() == TYP_SIMD16)
{
size <<= 1;
}
regNumber argReg = getRegNum(0);
#ifdef _TARGET_ARM_
- unsigned int regSize = (hfaType == TYP_DOUBLE) ? 2 : 1;
+ unsigned int regSize = (GetHfaType() == TYP_DOUBLE) ? 2 : 1;
#else
unsigned int regSize = 1;
#endif
}
// Get information about this argument.
- var_types hfaType = argEntry->hfaType;
+ var_types hfaType = argEntry->GetHfaType();
bool isHfaArg = (hfaType != TYP_UNDEF);
bool isHfaRegArg = argEntry->isHfaRegArg;
unsigned hfaSlots = argEntry->numRegs;
{
if (fgEntryPtr->isHfaArg)
{
- var_types hfaType = fgEntryPtr->hfaType;
+ var_types hfaType = fgEntryPtr->GetHfaType();
unsigned structSize;
if (argx->OperIs(GT_OBJ))
{
unsigned elemSize = 0;
var_types type[MAX_ARG_REG_COUNT] = {}; // TYP_UNDEF = 0
- hfaType = fgEntryPtr->hfaType;
+ hfaType = fgEntryPtr->GetHfaType();
if (varTypeIsValidHfaType(hfaType)
#if !defined(_HOST_UNIX_) && defined(_TARGET_ARM64_)
&& !fgEntryPtr->IsVararg()