mirror of
https://github.com/dlang/dmd.git
synced 2025-04-25 12:40:11 +03:00
re-enable RM.load check (#21196)
This commit is contained in:
parent
a0bf0f368a
commit
52cb9fdc1b
2 changed files with 3 additions and 1 deletions
|
@ -978,7 +978,7 @@ void getlvalue(ref CodeBuilder cdb,ref code pcs,elem* e,regm_t keepmsk,RM rm = R
|
|||
*/
|
||||
if (cgstate.regcon.params & pregm /*&& s.Spreg2 == NOREG && !(pregm & XMMREGS)*/)
|
||||
{
|
||||
if (/*rm == RM.load &&*/ !cgstate.anyiasm)
|
||||
if (rm == RM.load && !cgstate.anyiasm)
|
||||
{
|
||||
auto voffset = e.Voffset;
|
||||
if (sz <= REGSIZE)
|
||||
|
|
|
@ -253,6 +253,7 @@ Lp:
|
|||
void cdaddass(ref CGstate cg, ref CodeBuilder cdb,elem* e,ref regm_t pretregs)
|
||||
{
|
||||
//printf("cdaddass(e=%p, pretregs = %s)\n",e,regm_str(pretregs));
|
||||
//elem_print(e);
|
||||
OPER op = e.Eoper;
|
||||
regm_t retregs = 0;
|
||||
elem* e1 = e.E1;
|
||||
|
@ -376,6 +377,7 @@ void cdaddass(ref CGstate cg, ref CodeBuilder cdb,elem* e,ref regm_t pretregs)
|
|||
scodelem(cgstate,cdb,e.E2,retregs,0,true); // get rvalue
|
||||
getlvalue(cdb,cs,e1,retregs); // get lvalue
|
||||
reg_t reg1;
|
||||
//printf("cs.reg: %s cs.base: %s cs.index: %s\n", regm_str(mask(cs.reg)), regm_str(mask(cs.base)), regm_str(mask(cs.index)));
|
||||
if (cs.reg != NOREG)
|
||||
reg1 = cs.reg;
|
||||
else
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue