mirror of
https://github.com/dlang/dmd.git
synced 2025-04-25 20:50:41 +03:00
reals do not fit in XMM registers (#21288)
This commit is contained in:
parent
3ad50a0b08
commit
bdd45686de
2 changed files with 2 additions and 2 deletions
|
@ -4666,7 +4666,7 @@ void cdpair(ref CGstate cg, ref CodeBuilder cdb, elem* e, ref regm_t pretregs)
|
||||||
regm_t retregs = pretregs;
|
regm_t retregs = pretregs;
|
||||||
if (retregs == mPSW && tycomplex(e.Ety) && config.inline8087)
|
if (retregs == mPSW && tycomplex(e.Ety) && config.inline8087)
|
||||||
{
|
{
|
||||||
if (config.fpxmmregs)
|
if (config.fpxmmregs && tysize(e.Ety) < 20)
|
||||||
retregs |= mXMM0 | mXMM1;
|
retregs |= mXMM0 | mXMM1;
|
||||||
else
|
else
|
||||||
retregs |= mST01;
|
retregs |= mST01;
|
||||||
|
|
|
@ -1765,7 +1765,7 @@ elem* toElem(Expression e, ref IRState irs)
|
||||||
op = OPpair;
|
op = OPpair;
|
||||||
else if (ty == Tcomplex32 && ty1 == Timaginary32 && ty2 == Tfloat32 ||
|
else if (ty == Tcomplex32 && ty1 == Timaginary32 && ty2 == Tfloat32 ||
|
||||||
ty == Tcomplex64 && ty1 == Timaginary64 && ty2 == Tfloat64 ||
|
ty == Tcomplex64 && ty1 == Timaginary64 && ty2 == Tfloat64 ||
|
||||||
0 && ty == Tcomplex80 && ty1 == Timaginary80 && ty2 == Tfloat80)
|
ty == Tcomplex80 && ty1 == Timaginary80 && ty2 == Tfloat80)
|
||||||
op = OPrpair;
|
op = OPrpair;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue