http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48347
--- Comment #4 from Norman Goldstein <normvcr at telus dot net> 2011-03-30 19:35:48 UTC --- (In reply to comment #3) > I'm sure that sete doesn't work with any general operand. Use proper > constraints. You are right. sete must operate on an 8-bit register or an 8-bit memory location. GCC knows that the reference is to an 8-bit unsigned char, and GCC does the right thing under the "-g -O2" flags, so why not under the "-g" flag? I was not able to find a way to change the "=g" constraint to force GCC to use an 8-bit register/memory location.