[Bug rtl-optimization/18146] if-conversion is not performed for some reason

pinskia at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Mon Apr 25 02:14:00 GMT 2005


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-04-25 02:14 -------
We get now on the mainline:
foo:
        cmpl    $5, %eax
        movl    %eax, %ecx
        ja      .L2
        movl    $1, %eax
        movl    $1, %edx
        sall    %cl, %eax
        testb   $42, %al
        je      .L2
        movl    %edx, %eax
        ret
        .p2align 4,,7
.L2:
        xorl    %edx, %edx
        movl    %edx, %eax
        ret

I think the problem is really that we have multiple predecessors or something like that.  If we lowed the 
switch at the tree level, then PHI-OPT would catch this.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|2005-01-24 00:57:13         |2005-04-25 02:14:13
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18146



More information about the Gcc-bugs mailing list