This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/24810] [4.1/4.2 Regression] mov + mov + testl generated instead of testb
- From: "hubicka at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 18 Dec 2005 20:53:29 -0000
- Subject: [Bug rtl-optimization/24810] [4.1/4.2 Regression] mov + mov + testl generated instead of testb
- References: <bug-24810-1008@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #5 from hubicka at gcc dot gnu dot org 2005-12-18 20:53 -------
Simplified testcase seems to work for me on 4.1 branch:
restore_fpu:
movl 4(%esp), %edx
movl boot_cpu_data+12, %eax
testl $16777216, %eax
je .L2
jmp foo
.L2:
movl %edx, 4(%esp)
jmp bar
"jmp foo" is not elliminated because we don't have pattern for conditional
tailcalls. Should not be big issue to add the neccesary patterns however.
Honza
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24810