https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70263
Marek Polacek <mpolacek at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |law at gcc dot gnu.org, | |mpolacek at gcc dot gnu.org --- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> --- Started with r203895: commit 4bc0f16ebd21b15d624ebbf8efa88c9c2f1df367 Author: law <law@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Mon Oct 21 15:25:09 2013 +0000 * tree-ssa-threadedge.c (thread_through_normal_block): New argument VISITED. Remove VISISTED as a local variable. When we have a threadable jump, verify the destination of the jump has not been visised. (thread_across_edge): Allocate VISITED bitmap once at function scope and use it throughout. Make sure to set appropriate bits in VISITED for E (start of jump thread path). * tree-ssa-threadupdate.c (mark_threaded_blocks): Reject threading through a joiner if any edge on the path has a recorded jump thread.