http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53676
--- Comment #2 from Matt Hargett <matt at use dot net> 2012-06-14 23:00:33 UTC --- I forgot to mention -- it's the same result on all types, both signed and unsigned. the int8_t case is (hopefully) representative of the root cause for all/most of them.