Note: This website is archived. For up-to-date information about D projects and development, please visit wiki.dlang.org.

Changeset 308

Show
Ignore:
Timestamp:
12/24/09 20:15:25 (6 years ago)
Author:
walter
Message:

bugzilla 3633 Optimizer causes access violation

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • branches/dmd-1.x/src/backend/cod1.c

    r272 r308  
    13241324 
    13251325code *scodelem(elem *e,regm_t *pretregs,regm_t keepmsk,bool constflag) 
    1326 { code *c,*cs1,*cs2
     1326{ code *c,*cs1,*cs2,*cs3
    13271327  unsigned i,j; 
    13281328  regm_t oldmfuncreg,oldregcon,oldregimmed,overlap,tosave,touse; 
     
    14251425  } 
    14261426 
    1427   cs1 = cs2 = NULL; 
     1427  cs1 = cs2 = cs3 = NULL; 
    14281428  adjesp = 0; 
    14291429 
     
    14651465        cs2 = cat(gen1(CNIL,pop),cs2);      /* POP i    */ 
    14661466        } 
    1467         cs2 = cat(getregs(mi),cs2); 
     1467        cs3 = cat(getregs(mi),cs3); 
    14681468        tosave &= ~mi; 
    14691469    } 
     
    15071507        e,*pretregs,keepmsk,constflag); 
    15081508#endif 
    1509   return cat3(cs1,c,cs2); 
     1509  return cat4(cs1,c,cs3,cs2); 
    15101510} 
    15111511 
  • branches/dmd-1.x/src/msc.c

    r189 r308  
    4444    if (!config.target_cpu) 
    4545    {   config.target_cpu = TARGET_PentiumPro; 
    46     config.target_scheduler = config.target_cpu; 
     46    config.target_scheduler = 0; //config.target_cpu; 
    4747    } 
    4848    config.fulltypes = CVNONE; 
  • trunk/src/backend/cod1.c

    r272 r308  
    13241324 
    13251325code *scodelem(elem *e,regm_t *pretregs,regm_t keepmsk,bool constflag) 
    1326 { code *c,*cs1,*cs2
     1326{ code *c,*cs1,*cs2,*cs3
    13271327  unsigned i,j; 
    13281328  regm_t oldmfuncreg,oldregcon,oldregimmed,overlap,tosave,touse; 
     
    14251425  } 
    14261426 
    1427   cs1 = cs2 = NULL; 
     1427  cs1 = cs2 = cs3 = NULL; 
    14281428  adjesp = 0; 
    14291429 
     
    14651465        cs2 = cat(gen1(CNIL,pop),cs2);      /* POP i    */ 
    14661466        } 
    1467         cs2 = cat(getregs(mi),cs2); 
     1467        cs3 = cat(getregs(mi),cs3); 
    14681468        tosave &= ~mi; 
    14691469    } 
     
    15071507        e,*pretregs,keepmsk,constflag); 
    15081508#endif 
    1509   return cat3(cs1,c,cs2); 
     1509  return cat4(cs1,c,cs3,cs2); 
    15101510} 
    15111511