This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug tree-optimization/13761] [tree-ssa] component refs to the same struct should not alias


------- Additional Comments From steven at gcc dot gnu dot org  2005-07-25 15:28 -------
The example from comment #3 now optimizes to identical inner loops: 
 
;; Function foo (foo) 
 
foo () 
{ 
  int i.54; 
  int lsm_tmp.32; 
  int lsm_tmp.31; 
  int i; 
  int D.1628; 
  int D.1627; 
  int D.1623; 
  int x.0; 
 
<bb 0>: 
  x.0 = x; 
  D.1623 = x.0 * x.0; 
  lsm_tmp.32 = y; 
  i.54 = 0; 
 
<L0>:; 
  lsm_tmp.32 = (int) ((unsigned int) D.1623 + (unsigned int) lsm_tmp.32); 
  i.54 = i.54 + 1; 
  if (i.54 != 10) goto <L0>; else goto <L12>; 
 
<L12>:; 
  y = lsm_tmp.32; 
  D.1627 = global.x; 
  D.1628 = D.1627 * D.1627; 
  lsm_tmp.31 = global.y; 
  i = 0; 
 
<L3>:; 
  lsm_tmp.31 = (int) ((unsigned int) lsm_tmp.31 + (unsigned int) D.1628); 
  i = i + 1; 
  if (i != 10) goto <L3>; else goto <L5>; 
 
<L5>:; 
  global.y = lsm_tmp.31; 
  return; 
 
} 
 

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]