Richard Biener wrote:
This replaces the tree -> int hashtable caching hash values by
a pointer_map <hashval_t> and moves it out-of-GC.  Likewise
it moves the actual type hashtable out-of-GC.

LTO bootstrapped and tested on x86_64-unknown-linux-gnu, applied.


I think it's due to this patch that bootstrapping into an empty directory fails during Stage 1 for me with the following message.

Tobias

g++ -c -DIN_GCC_FRONTEND -g -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -fno-common -DHAVE_CONFIG_H -I. -Ilto -I../../gcc -I../../gcc/lto -I../../gcc/../include -I../../gcc/../libcpp/include -I../../gcc/../libdecnumber -I../../gcc/../libdecnumber/bid -I../libdecnumber -I../../gcc/../libbacktrace -DCLOOG_INT_GMP -o lto/lto.o -MT lto/lto.o -MMD -MP -MF lto/.deps/lto.TPo ../../gcc/lto/lto.c
In file included from ../../gcc/lto/lto.c:3258:0:
./gt-lto-lto.h:153:6: error: 'type_hash_cache' was not declared in this scope
     &type_hash_cache,
      ^
./gt-lto-lto.h:155:13: error: 'type_hash_cache' was not declared in this scope
     sizeof (type_hash_cache),
             ^
./gt-lto-lto.h:161:6: error: 'gimple_types' was not declared in this scope
     &gimple_types,
      ^
./gt-lto-lto.h:163:13: error: 'gimple_types' was not declared in this scope
     sizeof (gimple_types),
             ^
./gt-lto-lto.h:173:6: error: 'type_hash_cache' was not declared in this scope
     &type_hash_cache,
      ^
./gt-lto-lto.h:175:13: error: 'type_hash_cache' was not declared in this scope
     sizeof (type_hash_cache),
             ^
./gt-lto-lto.h:180:6: error: 'gimple_types' was not declared in this scope
     &gimple_types,
      ^
./gt-lto-lto.h:182:13: error: 'gimple_types' was not declared in this scope
     sizeof (gimple_types),
             ^
make[3]: *** [lto/lto.o] Error 1


2013-10-14  Richard Biener  <rguent...@suse.de>

        lto/
        * lto.c (gimple_canonical_types): Move out-of GC space.
        (canonical_type_hash_cache): Make a pointer-map.
        (num_canonical_type_hash_entries, num_canonical_type_hash_queries):
        New counters.
        (iterative_hash_canonical_type): Adjust.
        (read_cgraph_and_symbols): Likewise.
        (print_lto_report_1): Likewise.

Reply via email to