This is the mail archive of the gcc@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]

RE: [tree-ssa]: out-of-ssa breaks if something adds a pred


Daniel Berlin said:

> When something ends up adding a predecessor block to a block with phi's
> in it, out-of-ssa breaks. This is because it expects all the phi's to
> have the same number of args/edges as preds, but phi's created *before*
> the pred was added have one less argument/edge.

...

> Unless i'm having a stupid moment, this really shouldn't be an abort
> case. If a phi doesn't have an argument for a given edge, it means
> nothing needs to be done for that edge, no?

IMO, this is a failure of the edge insertion routines or the caller of the
routine.  An invariant in SSA is that the number of entries in a PHI node
must be equal to the number of predecessors.  The out-of-ssa pass is
correct to break if this is not true...

-Chris

-- 
http://llvm.cs.uiuc.edu/
http://www.nondot.org/~sabre/Projects/


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