------- Comment #9 from pinskia at gcc dot gnu dot org 2006-11-25 09:13 ------- (gdb) p debug_generic_expr (vh) VH.22 $4 = void (gdb) p debug_generic_expr (eprime) strlen (&lineD.1610) (gdb) p debug_generic_expr (vuse) lineD.1610_11
We have: # NONLOCAL.5_14 = PHI <NONLOCAL.5_18(5)>; # line_11 = PHI <line_17(5)>; <L4>:; # VUSE <line_11>; # VUSE <NONLOCAL.5_14>; D.1623_6 = strlen (&line); if (D.1623_6 == 100) goto <L6>; else goto <L7>; Though the good question is why we have those PHIs still there even though they don't do anything except produce a copy. All the copyprop passes as far as I can tell skip them because they are virtual. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29922