[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