http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53291
--- Comment #3 from Andi Kleen <andi-gcc at firstfloor dot org> 2012-05-09 17:17:56 UTC --- Correction. We can keep the xor %reg,%reg. We just need it because setnz only sets 8 bit to initialize the higher order bits. Alternatively the value can be zero extended afterwards or just stay at 8 bit if there is no need for it.