On 9/23/07, Manuel López-Ibáñez <[EMAIL PROTECTED]> wrote: > On 23/09/2007, Richard Guenther <[EMAIL PROTECTED]> wrote: > > On 9/23/07, Manuel López-Ibáñez <[EMAIL PROTECTED]> wrote: > > > On 23/09/2007, Richard Guenther <[EMAIL PROTECTED]> wrote: > > > > On 9/23/07, Manuel López-Ibáñez <[EMAIL PROTECTED]> wrote: > > > > > > > > > > Am I wrong? I have the same problem when I try to enable SSA at O0 and > > > > > my current solution is the dummy pass. > > > > > > > > Right, a dummy pass after salias works. > > > > > > > > > > And *before* salias? Does it make a difference? It suits me better for > > > my purposes. > > > > No, after salias you need to run rebuild_alias. And for efficiency you'd > > of course remove the TODO from salias itself. > > > > I am not so concerned about efficiency ATM, I am trying to build SSA at O0. > > Anyway, it doesn't work, verify_ssa fails with > > /home/manuel/src/trunk/libgcc/../gcc/libgcc2.c: In function '__negti2': > /home/manuel/src/trunk/libgcc/../gcc/libgcc2.c:74: error: found real > variable when subvariables should have appeared > while verifying SSA_NAME uu_12 in statement > # SFT.21 = VDEF <SFT.21> > # SFT.22 = VDEF <SFT.22> > # SFT.23 = VDEF <SFT.23> > uu = {}; > > and > > /home/manuel/src/trunk/libgcc/../gcc/libgcc2.c:74: error: expected an > SSA_NAME object > /home/manuel/src/trunk/libgcc/../gcc/libgcc2.c:74: error: in statement > # SFT.21 = VDEF <SFT.21> > # SFT.22 = VDEF <SFT.22> > # SFT.23 = VDEF <SFT.23> { SFT.21 SFT.22 SFT.23 } > uu = {}; > > :-(
salias never updated ssa, it expected rebuild_alias to do it. There is no point in updating ssa after salias but before building alias info, and building alias info doesn't care about vuse/vdef's being in ssa form. So just remove the verify ssa.