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] | |
Hello,
When the LNO branch copies a loop, it attempts to fix up the phi nodes
with
an algorithm that assumes there is only one phi per block per variable.
That is, it
won't see code like this:
(i.e. what do you mean by "copying a loop")?
where do we assume this
While this certainly is unlikely to happen, there probably is nothing that would prevent it.
Zdenek
;; basic block 19, loop depth 0, count 0 ;; prev block 9, next block 20 ;; pred: 10 [100.0%] (fallthru) ;; succ: 28 [50.0%] (true,exec) 29 [50.0%] (false,exec) # maxmin_Result_140 = PHI <1(10)>; # maxmin_Result_142 = PHI <2(10)>; # lsm_tmp.19_144 = PHI <lsm_tmp.19_84(10)>; <L28>:; if (m__10 == 0) goto <L26>; else goto <L27>;
Is that suppose to be a valid assumption? The dup is created by
copyrename, and
I see no code there that's intended to stop dups from being created (on
the
contrary, but surely it's unusual for the live ranges to overlap).
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |