diff options
author | Bernd Schmidt <bernd.schmidt@analog.com> | 2009-12-10 18:03:05 +0000 |
---|---|---|
committer | Bernd Schmidt <bernds@gcc.gnu.org> | 2009-12-10 18:03:05 +0000 |
commit | d435810e760bccf8d45f440d7fe85068fb621a2e (patch) | |
tree | 3b8366558ed3afbd3865c46fc4d7d6f3644d04eb /gcc/fortran/expr.c | |
parent | 574f366488bbe1bf3075735278242a92be85f40b (diff) | |
download | gcc-d435810e760bccf8d45f440d7fe85068fb621a2e.zip gcc-d435810e760bccf8d45f440d7fe85068fb621a2e.tar.gz gcc-d435810e760bccf8d45f440d7fe85068fb621a2e.tar.bz2 |
re PR rtl-optimization/42216 (changes in scheduling regress 464.h264ref 20%)
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.
From-SVN: r155134
Diffstat (limited to 'gcc/fortran/expr.c')
0 files changed, 0 insertions, 0 deletions