http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55585
--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> 2012-12-04 09:35:21 UTC --- It's probably the very many calls. At -O2 VRP runs and eventually removes most of them. Eventually the frontend should try to avoid emitting useless bound checks.