[PATCH][4/n] referenced-vars TLC

H.J. Lu hjl.tools@gmail.com
Wed May 23 14:25:00 GMT 2012


On Wed, May 23, 2012 at 5:00 AM, Richard Guenther <rguenther@suse.de> wrote:
>
> This finally switches us to not record global vars in referenced-vars.
> For this to work I had to re-engineer how we handle global var removal
> from local-decls in remove_unused_locals.  Incidentially that code
> already had some sort of a bitmap (for some weird reason even), thus
> I borrowed that and simplified the handling.  You may notice that
> it would be easy to handle all vars that way ...
>
> So eventually 5/n will make referenced-vars go away completely
> (the only serious user seems to be the SSA renamer for its
> SYMS_TO_RENAME bitmap).
>
> Bootstrapped on x86_64-unknown-linux-gnu, testing in progress.
>
> Richard.
>
> 2012-05-23  Richard Guenther  <rguenther@suse.de>
>
>        * tree-dfa.c (add_referenced_var_1): Do not add global vars.
>        * tree-ssa-live.c (mark_all_vars_used_1): Handle global vars
>        via the global_unused_vars bitmap.
>        (remove_unused_locals): Handle global vars in local-decls via
>        a global_unused_vars bitmap instead of the used flag in the
>        var annotation.  Simplify global variable handling and removal.
>

This breaks bootstrap on Linux/x86-64:

http://gcc.gnu.org/ml/gcc-regression/2012-05/msg00468.html

Comparing stages 2 and 3
warning: gcc/cc1plus-checksum.o differs
warning: gcc/cc1obj-checksum.o differs
warning: gcc/cc1-checksum.o differs
Bootstrap comparison failure!
gcc/trans-mem.o differs
gcc/gimple-low.o differs
gcc/sese.o differs
make[5]: *** [compare] Error 1

Please make sure that your compiler used for bootstrap
doesn't add anything to .comment section, which will
disable debug compare.

Thanks.

-- 
H.J.



More information about the Gcc-patches mailing list