remaining libjava/verify_local_live_at_start failures

John Wehle john@feith.com
Mon Mar 25 15:06:00 GMT 2002


> The problem is that global liveness is not recomputed after dead code removal
> keeping it in inconsistent state.  Fixed by iterating until stabilizes:
> 
> OK for branch/mainline?
> 
> Mon Mar 25 11:48:34 CET 2002  Jan Hubicka  <jh@suse.cz>
> 	* flow.c (update_life_info): Iterate dead code removal until it stabilizes.

I'm a little confused as to why this patch is necessary.
calculate_global_regs_live already iterates until global liveness
stablizes and it takes into consideration dead code removal (assuming
no CFG changes) if PROP_SCAN_DEAD_CODE is set.  update_life_info
was modified to iterate in order to handle PROP_ALLOW_CFG_CHANGES
simply because calculate_global_regs_live couldn't easily determine
all the dead code when CFG changes are allowed.

Are you saying the calculate_global_regs_live is returning
the wrong answer for (PROP_KILL_DEAD_CODE | PROP_SCAN_DEAD_CODE)?

-- John
-------------------------------------------------------------------------
|   Feith Systems  |   Voice: 1-215-646-8000  |  Email: john@feith.com  |
|    John Wehle    |     Fax: 1-215-540-5495  |                         |
-------------------------------------------------------------------------



More information about the Gcc mailing list