[Bug rtl-optimization/42216] [4.5 Regression] changes in scheduling regress 464.h264ref 20%

bernds at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Thu Dec 10 18:03:00 GMT 2009



------- Comment #20 from bernds at gcc dot gnu dot org  2009-12-10 18:03 -------
Subject: Bug 42216

Author: bernds
Date: Thu Dec 10 18:03:05 2009
New Revision: 155134

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=155134
Log:
        PR rtl-opt/42216
        * regrename.c: Error out if MAX_RECOG_OPERANDS is larger than
        HOST_BITS_PER_WIDE_INT.
        (verify_reg_in_set): New function, broken out of verify_reg_tracked.
        (verify_reg_tracked): Use it.
        (scan_rtx_reg): When seeing a use involving a superset of the
        registers in an existing chain, enlarge that chain.  Otherwise,
        allow subsets and set fail_current_block for all other kinds of
        overlap.
        (hide_operands): New argument UNTRACKED_OPERANDS; callers changed.
        Do not modify operands when the bit with the corresponding number
        is set in that bitmap.
        (build_def_use): When we see matching operands with different
        modes, don't set fail_current_block, but keep track of such
        operands in a bitmap if their registers aren't already tracked
        in an open chain.  Pass this bitmap to all hide_operands calls.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/regrename.c


-- 


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



More information about the Gcc-bugs mailing list