------- Additional Comments From steven at gcc dot gnu dot org  2005-05-12 
10:39 -------
Yada yada yada, you know the drill.  SRA, out-of-ssa, and register 
allocation all working against each other: 
 
<L6>:; 
  D.1605 = DI.IDE_found + (struct IDE_found_str *) ((long unsigned int) i * 
8); 
  tmp$reserved = D.1605->reserved; 
  tmp$bios_order = D.1605->bios_order; 
  tmp$irq = D.1605->irq; 
  tmp$ideIOctrladr = D.1605->ideIOctrladr; 
  tmp$ideIOadr = D.1605->ideIOadr; 
  D.1605->reserved = save$reserved; 
  D.1605->bios_order = save$bios_order; 
  D.1605->irq = save$irq; 
  D.1605->ideIOctrladr = save$ideIOctrladr; 
  D.1605->ideIOadr = save$ideIOadr; 
  i = i + 1; 
  save$reserved = tmp$reserved; 
  save$bios_order = tmp$bios_order; 
  save$irq = tmp$irq; 
  save$ideIOctrladr = tmp$ideIOctrladr; 
  save$ideIOadr = tmp$ideIOadr; 
 
Wouldn't a block move be more efficient here than moving things one-by-one? 
 

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
           Keywords|                            |ra
   Last reconfirmed|0000-00-00 00:00:00         |2005-05-12 10:39:02
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21529

Reply via email to