[Bug rtl-optimization/21803] [ia64] gcc produces really odd predicated code

bernds at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Wed Apr 14 20:42:00 GMT 2010



------- Comment #8 from bernds at gcc dot gnu dot org  2010-04-14 20:42 -------
Subject: Bug 21803

Author: bernds
Date: Wed Apr 14 20:42:02 2010
New Revision: 158357

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=158357
Log:
gcc/
        PR target/21803
        * ifcvt.c (cond_exec_process_if_block): Look for identical sequences
        at the start and end of the then/else blocks, and omit them from the
        conversion.
        * cfgcleanup.c (flow_find_cross_jump): No longer static.  Remove MODE
        argument; all callers changed.  Pass zero to old_insns_match_p instead.
        (flow_find_head_matching_sequence): New function.
        (old_insns_match_p): Check REG_EH_REGION notes for calls.
        * basic-block.h (flow_find_cross_jump,
        flow_find_head_matching_sequence): Declare functions.

gcc/testsuite/
        PR target/21803
        * gcc.target/arm/pr42496.c: New test.


Added:
    trunk/gcc/testsuite/gcc.target/arm/pr42496.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/basic-block.h
    trunk/gcc/cfgcleanup.c
    trunk/gcc/ifcvt.c
    trunk/gcc/testsuite/ChangeLog


-- 


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



More information about the Gcc-bugs mailing list