diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-05-17 00:07:06 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-05-17 00:07:06 +0000 |
commit | fd68649ad1e1eec87bd1e7ab3c52babb34c6fe6e (patch) | |
tree | 0985caaa294a9b67d9f020ea7ed7c0e19f107613 /gcc/flow.c | |
parent | bd6878e5428f43ff2197f57d864ca3892a868b41 (diff) | |
download | gcc-fd68649ad1e1eec87bd1e7ab3c52babb34c6fe6e.tar.gz |
* flow.c (calculate_global_regs_live): Queue blocks in program order.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@53533 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/flow.c')
-rw-r--r-- | gcc/flow.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/gcc/flow.c b/gcc/flow.c index cdfbee5c875..c78877d23ce 100644 --- a/gcc/flow.c +++ b/gcc/flow.c @@ -1113,16 +1113,14 @@ calculate_global_regs_live (blocks_in, blocks_out, flags) useful work. We use AUX non-null to flag that the block is queued. */ if (blocks_in) { - /* Clear out the garbage that might be hanging out in bb->aux. */ FOR_ALL_BB (bb) - bb->aux = NULL; - - EXECUTE_IF_SET_IN_SBITMAP (blocks_in, 0, i, - { - bb = BASIC_BLOCK (i); - *--qhead = bb; - bb->aux = bb; - }); + if (TEST_BIT (blocks_in, bb->sindex)) + { + *--qhead = bb; + bb->aux = bb; + } + else + bb->aux = NULL; } else { |