Improved x86-64 XMM register argument passing.

Also made XMM0-7 available for use as temporary registers, since they
are not used by the ABI. I'd like to do the same with RSI and RDI but
that's trickier since they can be used by gv() as temporary registers
and there isn't a way to disable that.
This commit is contained in:
James Lyon
2013-04-19 22:05:49 +01:00
parent 946afd2343
commit cbce6d2bac
2 changed files with 119 additions and 76 deletions

View File

@ -764,7 +764,7 @@ ST_FUNC int gv(int rc)
#endif
r = vtop->r & VT_VALMASK;
rc2 = RC_INT;
rc2 = (rc & RC_FLOAT) ? RC_FLOAT : RC_INT;
if (rc == RC_IRET)
rc2 = RC_LRET;
#ifdef TCC_TARGET_X86_64