--- Comment #4 from rguenth at gcc dot gnu dot org 2007-09-03 14:36 ---
I have a patch that makes it work apart from the tree level DSE issue.
--
rguenth at gcc dot gnu dot org changed:
What|Removed |Added
--
--- Comment #3 from rguenth at gcc dot gnu dot org 2007-09-03 12:04 ---
That is, rtl level DSE removes the dead store:
_ZN3CPU7executeEv:
.LFB5:
pushq %rbx
.LCFI0:
movq%rdi, %rbx
leaq8(%rdi), %rdi
call_ZN5Clock1fEv
.p2align 4,,10
--- Comment #2 from rguenth at gcc dot gnu dot org 2007-09-03 12:01 ---
The problem is that forwprop doesn't propagate addr_exprs to memory reference
stmts in early optimization anymore (due to the volatile issues) and
value numbering cannot deal with the different (but same) load/store
--- Comment #1 from pinskia at gcc dot gnu dot org 2007-09-03 11:28 ---
# VUSE
D.2581_35 = this_2(D)->D.2503.a;
D.2582_36 = (unsigned int) D.2581_35;
D.2583_37 = D.2582_36 + 2;
D.2584_38 = (int) D.2583_37;
# tab_76 = VDEF
# SMT.9_77 = VDEF
D.2529_3->a = D.2584_38;
#