-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 04/12/11 11:08, Jakub Jelinek wrote: > On Tue, Apr 12, 2011 at 09:18:01AM +0200, Eric Botcazou wrote: >>> The propagate_for_debug change alone could fix it, we should never >>> fall through into next basic block. We are unforuntately not deleting >>> just jumps (which ought to appear at the end of bbs), but also >>> any other noop moves, which I think is unintentional, we have >>> delete_noop_moves that should clean that up instead (see the second patch). >> >> Yes, I wondered several times about that. This clearly looks unintentional >> and >> I agree that it is worth fixing on the mainline, adding gcc_assert (at_end); >> to >> update_cfg_for_uncondjump in the process. > > Here is a patch, bootstrapped/regtested on x86_64-linux and i686-linux. > Ok for trunk? > > 2011-04-12 Jakub Jelinek <ja...@redhat.com> > > * combine.c (update_cfg_for_uncondjump): Instead of testing at_end > assert it is always true. > (try_combine): Don't call update_cfg_for_uncondjump for noop non-jump > moves. Looks good to me, but please wait for Eric to chime in since you've been discussing it with him already.
Thanks, jeff -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/ iQEcBAEBAgAGBQJNpIfYAAoJEBRtltQi2kC7yS4IAJZKDfF2fSkrEV1bWlz2p6Gm P9w4mby36+tqY6AJBLXlaSo97DCGfhgJHuYNJdtC8a4ySz8EpVmEFdjGAfydU6oc eIhaKfffm/dC8ciQfIQjBGh3mCe85LAOva9hY/3swyDJ2vFVZud/xY8QcC8RZIOk b6qZ/whcbTDOWSbII81auzhI9fIfESx5Rk73nD2hUqoi8e5uCMPRlnwsLTDwiJfR Cv8IJZ1kkIIc0i++wlZ9uuha+oRADcsj6awOKR9F07Qfa/ePU3xWw4e+auA6pfLL eui0+Xp5BmkwOBc4vF7dl/lxugwRvKXdEB2OdiB96d7dwDBnC6B0a/7zqXZ9bsc= =bwhq -----END PGP SIGNATURE-----