Skip to content
This repository was archived by the owner on Jan 23, 2023. It is now read-only.

Commit 92e2d4e

Browse files
janvorlijkotas
authored andcommitted
Fix handling of FP args on stack in the ArgIterator (#4729)
This change fixes a bug in the ArgIterator that resulted in assigning floating point arguments that didn't fit to the xmm registers to general purpose registers in the ArgIterator if there were some general purpose registers available.
1 parent b2dc8a1 commit 92e2d4e

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

src/vm/callingconvention.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -954,8 +954,8 @@ int ArgIteratorTemplate<ARGITERATOR_BASE>::GetNextOffset()
954954
m_fArgInRegisters = true;
955955

956956
int cFPRegs = 0;
957+
int cGenRegs = 0;
957958
int cbArg = StackElemSize(argSize);
958-
int cGenRegs = cbArg / 8; // GP reg size
959959

960960
switch (argType)
961961
{
@@ -1027,6 +1027,7 @@ int ArgIteratorTemplate<ARGITERATOR_BASE>::GetNextOffset()
10271027
}
10281028

10291029
default:
1030+
cGenRegs = cbArg / 8; // GP reg size
10301031
break;
10311032
}
10321033

0 commit comments

Comments
 (0)