diff options
author | Richard Biener <rguenther@suse.de> | 2013-10-14 12:06:38 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2013-10-14 12:06:38 +0000 |
commit | 83fd5d110eadec9102981082459e9fa5513b5124 (patch) | |
tree | 5851ead175606fe8c897bc8ed1b707d4f2d9d845 /gcc/lto/lto-lang.c | |
parent | a6dbd0f72b75340ceb96ea55ec18c01b6bee4ef2 (diff) | |
download | gcc-83fd5d110eadec9102981082459e9fa5513b5124.zip gcc-83fd5d110eadec9102981082459e9fa5513b5124.tar.gz gcc-83fd5d110eadec9102981082459e9fa5513b5124.tar.bz2 |
gimple.c (gimple_canonical_types, [...]): Move to lto/lto.c
2013-10-14 Richard Biener <rguenther@suse.de>
* gimple.c (gimple_canonical_types, canonical_type_hash_cache,
iterative_hash_canonical_type, gimple_canonical_type_hash,
gimple_canonical_types_compatible_p, gimple_canonical_type_eq,
gimple_register_canonical_type, print_gimple_types_stats,
free_gimple_type_tables): Move to lto/lto.c
(gt-gimple.h): Do not include.
* gimple.h (gimple_register_canonical_type,
print_gimple_types_stats, free_gimple_type_tables): Remove.
* Makefile.in (GTFILES): Remove gimple.c.
lto/
* lto-lang.c (lto_init): Do not re-init canonical types here.
(lto_register_canonical_types): Move to ...
* lto.c (lto_register_canonical_types): ... here.
(gimple_canonical_types, canonical_type_hash_cache,
iterative_hash_canonical_type, gimple_canonical_type_hash,
gimple_canonical_types_compatible_p, gimple_canonical_type_eq,
gimple_register_canonical_type): Add canonical type merging machinery
moved from gimple.c.
(read_cgraph_and_symbols): Init and free canonical type tables
here.
(print_lto_report_1): Report canonical type table stats here.
From-SVN: r203521
Diffstat (limited to 'gcc/lto/lto-lang.c')
-rw-r--r-- | gcc/lto/lto-lang.c | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/gcc/lto/lto-lang.c b/gcc/lto/lto-lang.c index 79cc560..0fa0fc9 100644 --- a/gcc/lto/lto-lang.c +++ b/gcc/lto/lto-lang.c @@ -1134,31 +1134,11 @@ lto_build_c_type_nodes (void) pid_type_node = integer_type_node; } -/* Re-compute TYPE_CANONICAL for NODE and related types. */ - -static void -lto_register_canonical_types (tree node) -{ - if (!node - || !TYPE_P (node)) - return; - - TYPE_CANONICAL (node) = NULL_TREE; - TYPE_CANONICAL (node) = gimple_register_canonical_type (node); - - if (POINTER_TYPE_P (node) - || TREE_CODE (node) == COMPLEX_TYPE - || TREE_CODE (node) == ARRAY_TYPE) - lto_register_canonical_types (TREE_TYPE (node)); -} - /* Perform LTO-specific initialization. */ static bool lto_init (void) { - unsigned i; - /* We need to generate LTO if running in WPA mode. */ flag_generate_lto = flag_wpa; @@ -1226,17 +1206,6 @@ lto_init (void) NAME_TYPE (boolean_type_node, "bool"); #undef NAME_TYPE - /* Register the common node types with the canonical type machinery so - we properly share alias-sets across languages and TUs. Do not - expose the common nodes as type merge target - those that should be - are already exposed so by pre-loading the LTO streamer caches. */ - for (i = 0; i < itk_none; ++i) - lto_register_canonical_types (integer_types[i]); - /* The sizetypes are not used to access data so we do not need to - do anything about them. */ - for (i = 0; i < TI_MAX; ++i) - lto_register_canonical_types (global_trees[i]); - /* Initialize LTO-specific data structures. */ vec_alloc (lto_global_var_decls, 256); in_lto_p = true; |