summaryrefslogtreecommitdiff
path: root/src/vm/callingconvention.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/vm/callingconvention.h')
-rw-r--r--src/vm/callingconvention.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/vm/callingconvention.h b/src/vm/callingconvention.h
index e70e31f3a7..eaabaa42b2 100644
--- a/src/vm/callingconvention.h
+++ b/src/vm/callingconvention.h
@@ -583,8 +583,8 @@ public:
if (TransitionBlock::IsFloatArgumentRegisterOffset(argOffset))
{
- // Dividing by 8 as size of each register in FloatArgumentRegisters is 8 bytes.
- pLoc->m_idxFloatReg = (argOffset - TransitionBlock::GetOffsetOfFloatArgumentRegisters()) / 8;
+ // Dividing by 16 as size of each register in FloatArgumentRegisters is 16 bytes.
+ pLoc->m_idxFloatReg = (argOffset - TransitionBlock::GetOffsetOfFloatArgumentRegisters()) / 16;
if (!m_argTypeHandle.IsNull() && m_argTypeHandle.IsHFA())
{
@@ -1332,7 +1332,8 @@ int ArgIteratorTemplate<ARGITERATOR_BASE>::GetNextOffset()
{
if (cFPRegs + m_idxFPReg <= 8)
{
- int argOfs = TransitionBlock::GetOffsetOfFloatArgumentRegisters() + m_idxFPReg * 8;
+ // Each floating point register in the argument area is 16 bytes.
+ int argOfs = TransitionBlock::GetOffsetOfFloatArgumentRegisters() + m_idxFPReg * 16;
m_idxFPReg += cFPRegs;
return argOfs;
}