------- Additional Comments From pinskia at gcc dot gnu dot org 2004-10-11 14:12 ------- This is a regression from 2.95.3: movl 4(%esp),%eax testb $1,(%eax) jne .L3 movb (%eax),%al shrb $1,%al andl $1,%eax ret .p2align 4,,7 .L3: movl $1,%eax ret And 3.0.4: foo: movl 4(%esp), %eax testb $1, (%eax) je .L2 movl $1, %eax ret .p2align 4,,7 .L2: movzbl (%eax), %eax shrb %al andl $1, %eax ret And 3.2.3,3.3.3, and 3.4.0: foo: movl 4(%esp), %eax movl $1, %edx movzbl (%eax), %eax testb $1, %al jne .L1 shrb %al movl %eax, %edx andl $1, %edx .L1: movl %edx, %eax ret .size foo, .-foo .section .note.GNU-stack,"",@progbits .ident "GCC: (GNU) 3.4.0"
-- What |Removed |Added ---------------------------------------------------------------------------- Severity|enhancement |minor Known to fail| |4.0.0 Known to work| |3.3.3 3.0.4 2.95.3 3.4.0 Summary|andl and testb are not |[4.0 Regresion] andl and |combined |testb are not combined Target Milestone|--- |4.0.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17931