diff options
author | Richard Guenther <rguenther@suse.de> | 2009-10-14 14:14:44 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2009-10-14 14:14:44 +0000 |
commit | 200c8750d65ebebc8a0d6f6f77a7f02b5a4a8ef3 (patch) | |
tree | 3d83178500a3538048d92b6df95e7c2182d671f7 /gcc/config/darwin9.h | |
parent | 77ce724c6b608989a50dd9ae86264ee0eec1b46a (diff) | |
download | gcc-200c8750d65ebebc8a0d6f6f77a7f02b5a4a8ef3.tar.gz |
lto-symtab.c (lto_symtab_compatible): Fold in ...
2009-10-14 Richard Guenther <rguenther@suse.de>
* lto-symtab.c (lto_symtab_compatible): Fold in ...
(lto_symtab_merge): ... here. Rewrite both to take the
prevailing and a to-be-merged entry and to queue diagnostics
properly.
(lto_symtab_resolve_replaceable_p): New predicate for
symbol resolution.
(lto_symtab_resolve_can_prevail_p): Likewise.
(lto_symtab_resolve_symbols): Rewrite. Fold in code that
handles merging commons by choosing the largest decl. Fold
in code that gives ODR errors.
(lto_symtab_merge_decls_2): Simplify a lot. Emit queued
diagnostics here.
(lto_symtab_merge_decls_1): Re-structure. Deal with the
case of no prevailing decl here. Diagnose mismatches
in object types here. Drop all but the prevailing decls.
(lto_symtab_prevailing_decl): Return the single prevailing decl.
* lto-streamer-in.c (lto_input_tree_ref): Deal with
VIEW_CONVERT_EXPRs in decl slots. Unshare the tree in this case.
lto/
* lto.c (lto_fixup_tree): In case the prevailing decl is not
compatible with the one we replace wrap it around a
VIEW_CONVERT_EXPR.
From-SVN: r152768
Diffstat (limited to 'gcc/config/darwin9.h')
0 files changed, 0 insertions, 0 deletions