http://gcc.gnu.org/bugzilla/show_bug.cgi?id=61058
--- Comment #1 from Uroš Bizjak <ubizjak at gmail dot com> --- Similar to PR54455, where Steven said: --q-- There can't be a BARRIER in the middle of a basic block. This problem typically indicates that either a BARRIER was emitted in the wrong place, or BB_END wasn't updated properly after a BARRIER was inserted somewhere. BARRIERs never appear inside a basic block. --/q-- The target ICEs due to invalid BARRIER location, so it looks like rtl-optimization bug to me.