This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH][LTO] Speed up gimple_type_hash


This patch speeds up gimple_type_hash by some big margin (down from some
minutes on a testcase to 2 seconds).  It also removes the self-referential
type limits - which may be the cause for the extra FAILs I get.

Bootstrapped and tested on x86_64-unknown-linux-gnu gets me

--- r149680	2009-07-15 15:54:56.000000000 +0200
+++ r149680-1	2009-07-15 14:18:30.000000000 +0200
@@ -9,14 +9,29 @@
 Running target unix
 FAIL: g++.dg/inherit/thunk1.C (test for excess errors)
 WARNING: g++.dg/inherit/thunk1.C compilation failed to produce executable
+FAIL: g++.dg/lto/20081125 cp_lto_20081125_0.o-cp_lto_20081125_1.o link,  (internal compiler error)
+UNRESOLVED: g++.dg/lto/20081125 cp_lto_20081125_0.o-cp_lto_20081125_1.o execute -fwhopr
+FAIL: g++.dg/lto/20081209 cp_lto_20081209_0.o-cp_lto_20081209_1.o link,  (internal compiler error)
+UNRESOLVED: g++.dg/lto/20081209 cp_lto_20081209_0.o-cp_lto_20081209_1.o execute -O2 -fwhopr
+FAIL: g++.dg/lto/20081209 cp_lto_20081209_0.o-cp_lto_20081209_1.o link,  (internal compiler error)
+UNRESOLVED: g++.dg/lto/20081209 cp_lto_20081209_0.o-cp_lto_20081209_1.o execute -O2 -flto
+FAIL: g++.dg/lto/20081211-1 cp_lto_20081211-1_0.o-cp_lto_20081211-1_1.o link,  (internal compiler error)
+UNRESOLVED: g++.dg/lto/20081211-1 cp_lto_20081211-1_0.o-cp_lto_20081211-1_1.o execute -O0 -flto
+FAIL: g++.dg/lto/20081211-1 cp_lto_20081211-1_0.o-cp_lto_20081211-1_1.o link,  (internal compiler error)
+UNRESOLVED: g++.dg/lto/20081211-1 cp_lto_20081211-1_0.o-cp_lto_20081211-1_1.o execute -O2 -flto
+FAIL: g++.dg/lto/20090311 cp_lto_20090311_0.o-cp_lto_20090311_1.o link,  (internal compiler error)
+UNRESOLVED: g++.dg/lto/20090311 cp_lto_20090311_0.o-cp_lto_20090311_1.o execute -O2 -fwhopr
+FAIL: g++.dg/lto/20090311 cp_lto_20090311_0.o-cp_lto_20090311_1.o link,  (internal compiler error)
+UNRESOLVED: g++.dg/lto/20090311 cp_lto_20090311_0.o-cp_lto_20090311_1.o execute -O2 -flto
 FAIL: g++.old-deja/g++.jason/thunk3.C (test for excess errors)
 WARNING: g++.old-deja/g++.jason/thunk3.C compilation failed to produce executable
 
 		=== g++ Summary ===
 
-# of expected passes		21060
-# of unexpected failures	2
+# of expected passes		21049
+# of unexpected failures	9
 # of expected failures		154
+# of unresolved testcases	7
 # of unsupported tests		373
 /space/rguenther/obj2/gcc/testsuite/g++/../../g++  version 4.5.0 20090714 (experimental) [lto revision 149624] (lto merged with rev 149625) 
 
@@ -37,6 +52,14 @@
 FAIL: gcc.c-torture/compile/limits-exprparen.c  -O2 -fwhopr  (test for excess errors)
 FAIL: gcc.c-torture/compile/limits-exprparen.c  -O3 -fwhopr  (test for excess errors)
 FAIL: gcc.c-torture/execute/builtins/strncpy.c execution,  -O3 -flto 
+FAIL: gcc.c-torture/execute/20070919-1.c compilation,  -O2 -flto  (internal compiler error)
+UNRESOLVED: gcc.c-torture/execute/20070919-1.c execution,  -O2 -flto 
+FAIL: gcc.c-torture/execute/20070919-1.c compilation,  -O3 -flto  (internal compiler error)
+UNRESOLVED: gcc.c-torture/execute/20070919-1.c execution,  -O3 -flto 
+FAIL: gcc.c-torture/execute/20070919-1.c compilation,  -O2 -fwhopr  (internal compiler error)
+UNRESOLVED: gcc.c-torture/execute/20070919-1.c execution,  -O2 -fwhopr 
+FAIL: gcc.c-torture/execute/20070919-1.c compilation,  -O3 -fwhopr  (internal compiler error)
+UNRESOLVED: gcc.c-torture/execute/20070919-1.c execution,  -O3 -fwhopr 
 FAIL: gcc.dg/autopar/parallelization-1.c scan-tree-dump-times optimized "loopfn" 5
 XPASS: gcc.dg/Warray-bounds.c  (test for warnings, line 59)
 XPASS: gcc.dg/Warray-bounds.c  (test for warnings, line 65)
@@ -92,14 +115,26 @@
 UNRESOLVED: gcc.target/x86_64/abi/test_basic_array_size_and_align.c execution,  -O0 -flto 
 FAIL: gcc.target/x86_64/abi/test_basic_array_size_and_align.c compilation,  -O0 -fwhopr  (internal compiler error)
 UNRESOLVED: gcc.target/x86_64/abi/test_basic_array_size_and_align.c execution,  -O0 -fwhopr 
+FAIL: gcc.target/x86_64/abi/test_passing_structs.c compilation,  -O0 -flto  (internal compiler error)
+UNRESOLVED: gcc.target/x86_64/abi/test_passing_structs.c execution,  -O0 -flto 
+FAIL: gcc.target/x86_64/abi/test_passing_structs.c compilation,  -O2 -flto  (internal compiler error)
+UNRESOLVED: gcc.target/x86_64/abi/test_passing_structs.c execution,  -O2 -flto 
+FAIL: gcc.target/x86_64/abi/test_passing_structs.c compilation,  -O3 -flto  (internal compiler error)
+UNRESOLVED: gcc.target/x86_64/abi/test_passing_structs.c execution,  -O3 -flto 
+FAIL: gcc.target/x86_64/abi/test_passing_structs.c compilation,  -O0 -fwhopr  (internal compiler error)
+UNRESOLVED: gcc.target/x86_64/abi/test_passing_structs.c execution,  -O0 -fwhopr 
+FAIL: gcc.target/x86_64/abi/test_passing_structs.c compilation,  -O2 -fwhopr  (internal compiler error)
+UNRESOLVED: gcc.target/x86_64/abi/test_passing_structs.c execution,  -O2 -fwhopr 
+FAIL: gcc.target/x86_64/abi/test_passing_structs.c compilation,  -O3 -fwhopr  (internal compiler error)
+UNRESOLVED: gcc.target/x86_64/abi/test_passing_structs.c execution,  -O3 -fwhopr 
 
 		=== gcc Summary ===
 
-# of expected passes		87741
-# of unexpected failures	47
+# of expected passes		87721
+# of unexpected failures	57
 # of unexpected successes	4
 # of expected failures		193
-# of unresolved testcases	15
+# of unresolved testcases	25
 # of unsupported tests		1814
 /space/rguenther/obj2/gcc/xgcc  version 4.5.0 20090714 (experimental) [lto revision 149624] (lto merged with rev 149625) 
 
@@ -107,12 +142,183 @@
 
 
 Running target unix
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/actual_array_constructor_1.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/actual_array_constructor_1.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/actual_array_constructor_1.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/actual_array_constructor_1.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/actual_array_constructor_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/actual_array_constructor_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/actual_array_constructor_1.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_constructor_2.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/actual_array_constructor_2.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/actual_array_constructor_2.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_constructor_2.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/actual_array_constructor_2.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/actual_array_constructor_2.f90  -O2 -flto  compilation failed to produce executable
 FAIL: gfortran.dg/actual_array_constructor_2.f90  -O3 -flto  (internal compiler error)
 FAIL: gfortran.dg/actual_array_constructor_2.f90  -O3 -flto  (test for excess errors)
 WARNING: gfortran.dg/actual_array_constructor_2.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_constructor_2.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/actual_array_constructor_2.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/actual_array_constructor_2.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_constructor_2.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/actual_array_constructor_2.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/actual_array_constructor_2.f90  -O2 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/actual_array_constructor_2.f90  -O3 -fwhopr  (internal compiler error)
 FAIL: gfortran.dg/actual_array_constructor_2.f90  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/actual_array_constructor_2.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_1.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_1.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_1.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_1.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_1.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_2.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_2.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_2.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_2.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_2.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/actual_array_substr_2.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/actual_array_substr_2.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/aliasing_dummy_1.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/aliasing_dummy_1.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/aliasing_dummy_1.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/aliasing_dummy_1.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/aliasing_dummy_1.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/aliasing_dummy_1.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/aliasing_dummy_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/aliasing_dummy_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/aliasing_dummy_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/aliasing_dummy_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/aliasing_dummy_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/aliasing_dummy_1.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/alloc_comp_constructor_1.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/alloc_comp_constructor_1.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/alloc_comp_constructor_1.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/alloc_comp_constructor_1.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/alloc_comp_constructor_1.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/alloc_comp_constructor_1.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/alloc_comp_constructor_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/alloc_comp_constructor_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/alloc_comp_constructor_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/alloc_comp_constructor_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/alloc_comp_constructor_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/alloc_comp_constructor_1.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/array_constructor_9.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/array_constructor_9.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/array_constructor_9.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/array_constructor_type_10.f03  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/array_constructor_type_10.f03  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/array_constructor_type_10.f03  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/array_constructor_type_10.f03  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/array_constructor_type_10.f03  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/array_constructor_type_10.f03  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/array_constructor_type_10.f03  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/array_constructor_type_10.f03  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/array_constructor_type_10.f03  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/array_memset_2.f90  -O0 -fwhopr  execution test
+FAIL: gfortran.dg/array_memset_2.f90  -O2 -fwhopr  execution test
+FAIL: gfortran.dg/array_memset_2.f90  -O3 -fwhopr  execution test
+FAIL: gfortran.dg/array_temporaries_3.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/array_temporaries_3.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/array_temporaries_3.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/array_temporaries_3.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/array_temporaries_3.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/array_temporaries_3.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/array_temporaries_3.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/array_temporaries_3.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/array_temporaries_3.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/array_temporaries_3.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/array_temporaries_3.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/array_temporaries_3.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/auto_char_dummy_array_1.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/auto_char_dummy_array_1.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/auto_char_dummy_array_1.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/auto_char_dummy_array_1.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/auto_char_dummy_array_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/auto_char_dummy_array_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/auto_char_dummy_array_1.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/auto_char_pointer_array_result_1.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/auto_char_pointer_array_result_1.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/auto_char_pointer_array_result_1.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/auto_char_pointer_array_result_1.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/auto_char_pointer_array_result_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/auto_char_pointer_array_result_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/auto_char_pointer_array_result_1.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/auto_pointer_array_result_1.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/auto_pointer_array_result_1.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/auto_pointer_array_result_1.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/auto_pointer_array_result_1.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/auto_pointer_array_result_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/auto_pointer_array_result_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/auto_pointer_array_result_1.f90  -O3 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/bind_c_coms.f90  -O0 -flto  (test for excess errors)
 WARNING: gfortran.dg/bind_c_coms.f90  -O0 -flto  compilation failed to produce executable
 FAIL: gfortran.dg/bind_c_coms.f90  -O2 -flto  (test for excess errors)
@@ -209,6 +415,54 @@
 WARNING: gfortran.dg/blockdata_1.f90  -O2 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/blockdata_1.f90  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/blockdata_1.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/bound_2.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/bound_2.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/bound_2.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/bound_7.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/bound_7.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/bound_7.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_10.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_10.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_10.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_10.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_10.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_10.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_10.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_10.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_10.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_10.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_10.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_10.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_10.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_10.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_10.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_10.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_10.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_10.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_array_ctor_1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_array_ctor_1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_array_ctor_1.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_array_ctor_4.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_array_ctor_4.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_array_ctor_4.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_array_ctor_6.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_array_ctor_6.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_array_ctor_6.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_array_ctor_6.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_array_ctor_6.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_array_ctor_6.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_array_ctor_6.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_array_ctor_6.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_array_ctor_6.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_array_ctor_8.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_array_ctor_8.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_array_ctor_8.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_array_ctor_8.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_array_ctor_8.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_array_ctor_8.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/bounds_check_array_ctor_8.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/bounds_check_array_ctor_8.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/bounds_check_array_ctor_8.f90  -O3 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/bounds_check_strlen_1.f90  -O0 -flto  (test for excess errors)
 FAIL: gfortran.dg/bounds_check_strlen_1.f90  -O2 -flto  (test for excess errors)
 FAIL: gfortran.dg/bounds_check_strlen_1.f90  -O3 -flto  (test for excess errors)
@@ -353,6 +607,112 @@
 FAIL: gfortran.dg/c_ptr_tests.f03  -O3 -fwhopr  (internal compiler error)
 FAIL: gfortran.dg/c_ptr_tests.f03  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/c_ptr_tests.f03  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_expr_3.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_expr_3.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_expr_3.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_expr_3.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_expr_3.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_expr_3.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_expr_3.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_expr_3.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_expr_3.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_expr_3.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_expr_3.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_expr_3.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_expr_3.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_expr_3.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_expr_3.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_expr_3.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_expr_3.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_expr_3.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_initialiser_actual.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_initialiser_actual.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_initialiser_actual.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_initialiser_actual.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_initialiser_actual.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_initialiser_actual.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_initialiser_actual.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_initialiser_actual.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_initialiser_actual.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_initialiser_actual.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_initialiser_actual.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_initialiser_actual.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_initialiser_actual.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_initialiser_actual.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_initialiser_actual.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_length_5.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_length_5.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_length_5.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_length_5.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_length_5.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_length_5.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_length_5.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_length_5.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_length_5.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_length_5.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_length_5.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_length_5.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_length_7.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_length_7.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_length_7.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_length_7.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_length_7.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_length_7.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_length_7.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_length_7.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_length_7.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_length_7.f90  -O0 -fwhopr  execution test
+FAIL: gfortran.dg/char_length_7.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_length_7.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_length_7.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_length_7.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_length_7.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_length_7.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_pointer_assign_5.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_pointer_assign_5.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_pointer_assign_5.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_pointer_assign_5.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_pointer_assign_5.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_pointer_assign_5.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_result_2.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_result_2.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_result_2.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_result_2.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_result_2.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_result_2.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_result_2.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_result_2.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_result_2.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_result_2.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_result_2.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_result_2.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_result_2.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_result_2.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_result_2.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_result_2.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_result_2.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_result_2.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_result_3.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_result_3.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_result_3.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_result_3.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/char_result_3.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/char_result_3.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/char_result_3.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_result_3.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_result_3.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/char_result_3.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/char_result_3.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/char_result_3.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/character_array_constructor_1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/character_array_constructor_1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/character_array_constructor_1.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/character_array_constructor_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/character_array_constructor_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/character_array_constructor_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/character_array_constructor_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/character_array_constructor_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/character_array_constructor_1.f90  -O3 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/common_align_2.f90  -O0 -flto  (test for excess errors)
 WARNING: gfortran.dg/common_align_2.f90  -O0 -flto  compilation failed to produce executable
 FAIL: gfortran.dg/common_align_2.f90  -O2 -flto  (test for excess errors)
@@ -371,6 +731,25 @@
 FAIL: gfortran.dg/contained_3.f90  -O0 -fwhopr  execution test
 FAIL: gfortran.dg/contained_3.f90  -O2 -fwhopr  execution test
 FAIL: gfortran.dg/contained_3.f90  -O3 -fwhopr  execution test
+FAIL: gfortran.dg/cray_pointers_2.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/cray_pointers_2.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/cray_pointers_2.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/cray_pointers_2.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/cray_pointers_2.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/cray_pointers_2.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/cray_pointers_2.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/cray_pointers_2.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/cray_pointers_2.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/cray_pointers_2.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/cray_pointers_2.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/cray_pointers_2.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/derived_comp_array_ref_7.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/derived_comp_array_ref_7.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/derived_comp_array_ref_7.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/derived_comp_array_ref_7.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/derived_comp_array_ref_7.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/derived_comp_array_ref_7.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/elemental_subroutine_3.f90  -O3 -flto  execution test
 FAIL: gfortran.dg/equiv_7.f90  -O0 -flto  (test for excess errors)
 WARNING: gfortran.dg/equiv_7.f90  -O0 -flto  compilation failed to produce executable
 FAIL: gfortran.dg/equiv_7.f90  -O2 -flto  (test for excess errors)
@@ -383,6 +762,12 @@
 WARNING: gfortran.dg/equiv_7.f90  -O2 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/equiv_7.f90  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/equiv_7.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/func_derived_2.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/func_derived_2.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/func_derived_2.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/func_derived_2.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/func_derived_2.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/func_derived_2.f90  -O3 -flto  compilation failed to produce executable
 FAIL: gfortran.dg/gamma_5.f90  -O0 -flto  execution test
 FAIL: gfortran.dg/gamma_5.f90  -O2 -flto  execution test
 FAIL: gfortran.dg/gamma_5.f90  -O3 -flto  execution test
@@ -413,6 +798,12 @@
 WARNING: gfortran.dg/hollerith.f90  -O2 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/hollerith.f90  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/hollerith.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/host_dummy_index_1.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/host_dummy_index_1.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/host_dummy_index_1.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/host_dummy_index_1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/host_dummy_index_1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/host_dummy_index_1.f90  -O0 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/integer_exponentiation_2.f90  -O0 -flto  (test for excess errors)
 WARNING: gfortran.dg/integer_exponentiation_2.f90  -O0 -flto  compilation failed to produce executable
 FAIL: gfortran.dg/integer_exponentiation_2.f90  -O2 -flto  (test for excess errors)
@@ -425,6 +816,24 @@
 WARNING: gfortran.dg/integer_exponentiation_2.f90  -O2 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/integer_exponentiation_2.f90  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/integer_exponentiation_2.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/interface_12.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/interface_12.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/interface_12.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/interface_12.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/interface_12.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/interface_12.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/interface_12.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/interface_12.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/interface_12.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/interface_12.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/interface_12.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/interface_12.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/interface_assignment_2.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/interface_assignment_2.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/interface_assignment_2.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/interface_assignment_2.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/interface_assignment_2.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/interface_assignment_2.f90  -O0 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/literal_character_constant_1_y.F  -O0 -flto  (test for excess errors)
 FAIL: gfortran.dg/literal_character_constant_1_y.F  -O2 -flto  (test for excess errors)
 FAIL: gfortran.dg/literal_character_constant_1_y.F  -O3 -flto  (test for excess errors)
@@ -461,6 +870,33 @@
 FAIL: gfortran.dg/mapping_3.f90  -O3 -fwhopr  (internal compiler error)
 FAIL: gfortran.dg/mapping_3.f90  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/mapping_3.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/module_interface_1.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/module_interface_1.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/module_interface_1.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/module_interface_1.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/module_interface_1.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/module_interface_1.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/module_interface_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/module_interface_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/module_interface_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/module_interface_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/module_interface_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/module_interface_1.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/operator_1.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/operator_1.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/operator_1.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/operator_1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/operator_1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/operator_1.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/operator_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/operator_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/operator_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/operator_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/operator_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/operator_1.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/parens_3.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/parens_3.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/parens_3.f90  -O0 -flto  compilation failed to produce executable
 FAIL: gfortran.dg/pointer_check_6.f90  -O0 -flto  (test for excess errors)
 WARNING: gfortran.dg/pointer_check_6.f90  -O0 -flto  compilation failed to produce executable
 FAIL: gfortran.dg/pointer_check_6.f90  -O2 -flto  (test for excess errors)
@@ -473,6 +909,27 @@
 WARNING: gfortran.dg/pointer_check_6.f90  -O2 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/pointer_check_6.f90  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/pointer_check_6.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/pr15324.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/pr15324.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/pr15324.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/pr15324.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/pr15324.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/pr15324.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/pr17612.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/pr17612.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/pr17612.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/pr17612.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/pr17612.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/pr17612.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/pr17612.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/pr17612.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/pr17612.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/pr17612.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/pr17612.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/pr17612.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/pr17612.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/pr17612.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/pr17612.f90  -O3 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/pr37243.f  -O0 -flto  (test for excess errors)
 WARNING: gfortran.dg/pr37243.f  -O0 -flto  compilation failed to produce executable
 FAIL: gfortran.dg/pr37243.f  -O2 -flto  (test for excess errors)
@@ -485,6 +942,33 @@
 WARNING: gfortran.dg/pr37243.f  -O2 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/pr37243.f  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/pr37243.f  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/proc_decl_17.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/proc_decl_17.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/proc_decl_17.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/proc_decl_17.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/proc_decl_17.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/proc_decl_17.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/proc_decl_17.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/proc_decl_17.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/proc_decl_17.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/proc_decl_17.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/proc_decl_17.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/proc_decl_17.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/proc_decl_17.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/proc_decl_17.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/proc_decl_17.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/proc_decl_17.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/proc_decl_17.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/proc_decl_17.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/proc_ptr_18.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/proc_ptr_18.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/proc_ptr_18.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/proc_ptr_18.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/proc_ptr_18.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/proc_ptr_18.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/proc_ptr_18.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/proc_ptr_18.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/proc_ptr_18.f90  -O3 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/proc_ptr_7.f90  -O2 -flto  execution test
 FAIL: gfortran.dg/proc_ptr_7.f90  -O3 -flto  execution test
 FAIL: gfortran.dg/proc_ptr_7.f90  -O2 -fwhopr  execution test
@@ -549,6 +1033,24 @@
 WARNING: gfortran.dg/sizeof.f90  -O2 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/sizeof.f90  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/sizeof.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/sms-1.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/sms-1.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/sms-1.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/sms-1.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/sms-1.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/sms-1.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/sms-1.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/sms-1.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/sms-1.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/sms-1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/sms-1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/sms-1.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/sms-1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/sms-1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/sms-1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/sms-1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/sms-1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/sms-1.f90  -O3 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/static_linking_1.f  -O0 -flto  (internal compiler error)
 FAIL: gfortran.dg/static_linking_1.f  -O0 -flto  (test for excess errors)
 WARNING: gfortran.dg/static_linking_1.f  -O0 -flto  compilation failed to produce executable
@@ -567,18 +1069,126 @@
 FAIL: gfortran.dg/static_linking_1.f  -O3 -fwhopr  (internal compiler error)
 FAIL: gfortran.dg/static_linking_1.f  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/static_linking_1.f  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/string_ctor_1.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/string_ctor_1.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/string_ctor_1.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/string_ctor_1.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/string_ctor_1.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/string_ctor_1.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/string_ctor_1.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/string_ctor_1.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/string_ctor_1.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/string_ctor_1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/string_ctor_1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/string_ctor_1.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/string_ctor_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/string_ctor_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/string_ctor_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/string_ctor_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/string_ctor_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/string_ctor_1.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/substr_4.f  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/substr_4.f  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/substr_4.f  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/substr_4.f  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/substr_4.f  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/substr_4.f  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/substr_4.f  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/substr_4.f  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/substr_4.f  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/substr_4.f  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/substr_4.f  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/substr_4.f  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/substr_4.f  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/substr_4.f  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/substr_4.f  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/substr_4.f  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/substr_4.f  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/substr_4.f  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/transfer_array_intrinsic_2.f90  -O0 -flto  compilation failed to produce executable
 FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O2 -flto  (internal compiler error)
 FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O2 -flto  (test for excess errors)
 WARNING: gfortran.dg/transfer_array_intrinsic_2.f90  -O2 -flto  compilation failed to produce executable
 FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O3 -flto  (internal compiler error)
 FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O3 -flto  (test for excess errors)
 WARNING: gfortran.dg/transfer_array_intrinsic_2.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/transfer_array_intrinsic_2.f90  -O0 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O2 -fwhopr  (internal compiler error)
 FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O2 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/transfer_array_intrinsic_2.f90  -O2 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O3 -fwhopr  (internal compiler error)
 FAIL: gfortran.dg/transfer_array_intrinsic_2.f90  -O3 -fwhopr  (test for excess errors)
 WARNING: gfortran.dg/transfer_array_intrinsic_2.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/vector_subscript_1.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/vector_subscript_1.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/vector_subscript_1.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/vector_subscript_1.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/vector_subscript_1.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/vector_subscript_1.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/vector_subscript_1.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/vector_subscript_1.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/vector_subscript_1.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/vector_subscript_1.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/vector_subscript_1.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/vector_subscript_1.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/vector_subscript_1.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/vector_subscript_1.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/vector_subscript_1.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/vector_subscript_1.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/vector_subscript_1.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/vector_subscript_1.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/vector_subscript_2.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/vector_subscript_2.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/vector_subscript_2.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/vector_subscript_2.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/vector_subscript_2.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/vector_subscript_2.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/vector_subscript_2.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/vector_subscript_2.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/vector_subscript_2.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/vector_subscript_2.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/vector_subscript_2.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/vector_subscript_2.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O0 -flto  (internal compiler error)
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O0 -flto  (test for excess errors)
+WARNING: gfortran.dg/widechar_intrinsics_5.f90  -O0 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/widechar_intrinsics_5.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/widechar_intrinsics_5.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O0 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/widechar_intrinsics_5.f90  -O0 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/widechar_intrinsics_5.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/widechar_intrinsics_5.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/widechar_intrinsics_5.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/widechar_intrinsics_6.f90  -O2 -flto  (internal compiler error)
+FAIL: gfortran.dg/widechar_intrinsics_6.f90  -O2 -flto  (test for excess errors)
+WARNING: gfortran.dg/widechar_intrinsics_6.f90  -O2 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/widechar_intrinsics_6.f90  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/widechar_intrinsics_6.f90  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/widechar_intrinsics_6.f90  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/widechar_intrinsics_6.f90  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/widechar_intrinsics_6.f90  -O2 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/widechar_intrinsics_6.f90  -O2 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/widechar_intrinsics_6.f90  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/widechar_intrinsics_6.f90  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/widechar_intrinsics_6.f90  -O3 -fwhopr  compilation failed to produce executable
+FAIL: gfortran.dg/g77/strlen0.f  -O3 -flto  (internal compiler error)
+FAIL: gfortran.dg/g77/strlen0.f  -O3 -flto  (test for excess errors)
+WARNING: gfortran.dg/g77/strlen0.f  -O3 -flto  compilation failed to produce executable
+FAIL: gfortran.dg/g77/strlen0.f  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.dg/g77/strlen0.f  -O3 -fwhopr  (test for excess errors)
+WARNING: gfortran.dg/g77/strlen0.f  -O3 -fwhopr  compilation failed to produce executable
 FAIL: gfortran.dg/lto/pr40724 f_lto_pr40724_0.o-f_lto_pr40724_1.o link,  (internal compiler error)
 UNRESOLVED: gfortran.dg/lto/pr40724 f_lto_pr40724_0.o-f_lto_pr40724_1.o execute -O0 -fwhopr
 FAIL: gfortran.dg/lto/pr40724 f_lto_pr40724_0.o-f_lto_pr40724_1.o link,  (internal compiler error)
@@ -603,11 +1213,45 @@
 UNRESOLVED: gfortran.dg/lto/pr40725 f_lto_pr40725_0.o-f_lto_pr40725_1.o execute -O0 -flto
 FAIL: gfortran.dg/lto/pr40725 f_lto_pr40725_0.o-f_lto_pr40725_1.o link,  (internal compiler error)
 UNRESOLVED: gfortran.dg/lto/pr40725 f_lto_pr40725_0.o-f_lto_pr40725_1.o execute -O2 -flto
+FAIL: gfortran.fortran-torture/execute/arrayarg2.f90,  -O2 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/arrayarg2.f90,  -O3 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/arrayarg2.f90,  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/arrayarg2.f90,  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/assumed_size.f90,  -O2 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/assumed_size.f90,  -O3 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/assumed_size.f90,  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/assumed_size.f90,  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/in-pack.f90,  -O0 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/in-pack.f90,  -O2 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/in-pack.f90,  -O3 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/in-pack.f90,  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/in-pack.f90,  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/in-pack.f90,  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/pr19269-1.f90,  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/pr19269-1.f90,  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_3.f90,  -O0 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_3.f90,  -O2 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_3.f90,  -O3 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_3.f90,  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_3.f90,  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_3.f90,  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_4.f90,  -O0 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_4.f90,  -O2 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_4.f90,  -O3 -flto  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_4.f90,  -O0 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_4.f90,  -O2 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/strarray_4.f90,  -O3 -fwhopr  (internal compiler error)
+FAIL: gfortran.fortran-torture/execute/where_3.f90 execution,  -O0 -flto 
+FAIL: gfortran.fortran-torture/execute/where_3.f90 execution,  -O2 -flto 
+FAIL: gfortran.fortran-torture/execute/where_3.f90 execution,  -O3 -flto 
+FAIL: gfortran.fortran-torture/execute/where_3.f90 execution,  -O0 -fwhopr 
+FAIL: gfortran.fortran-torture/execute/where_3.f90 execution,  -O2 -fwhopr 
+FAIL: gfortran.fortran-torture/execute/where_3.f90 execution,  -O3 -fwhopr 
 
 		=== gfortran Summary ===
 
-# of expected passes		51342
-# of unexpected failures	310
+# of expected passes		50879
+# of unexpected failures	729
 # of expected failures		20
 # of unresolved testcases	12
 # of unsupported tests		55
@@ -631,35 +1275,99 @@
 
 
 Running target unix
+FAIL: 20_util/auto_ptr/3946.cc (test for excess errors)
+WARNING: 20_util/auto_ptr/3946.cc compilation failed to produce executable
 FAIL: 21_strings/basic_string/numeric_conversions/char/stod.cc execution test
 FAIL: 21_strings/basic_string/numeric_conversions/char/stof.cc execution test
 FAIL: 21_strings/basic_string/numeric_conversions/char/stold.cc execution test
 FAIL: 21_strings/basic_string/numeric_conversions/wchar_t/stod.cc execution test
 FAIL: 21_strings/basic_string/numeric_conversions/wchar_t/stof.cc execution test
 FAIL: 21_strings/basic_string/numeric_conversions/wchar_t/stold.cc execution test
+FAIL: 22_locale/ctype/to/wchar_t/1.cc (test for excess errors)
+WARNING: 22_locale/ctype/to/wchar_t/1.cc compilation failed to produce executable
+FAIL: 22_locale/ctype/to/wchar_t/wrapped_env.cc (test for excess errors)
+WARNING: 22_locale/ctype/to/wchar_t/wrapped_env.cc compilation failed to produce executable
+FAIL: 22_locale/ctype/to/wchar_t/wrapped_locale.cc (test for excess errors)
+WARNING: 22_locale/ctype/to/wchar_t/wrapped_locale.cc compilation failed to produce executable
 FAIL: 22_locale/locale/cons/12352.cc execution test
+FAIL: 22_locale/num_put/put/wchar_t/wrapped_env.cc (test for excess errors)
+WARNING: 22_locale/num_put/put/wchar_t/wrapped_env.cc compilation failed to produce executable
+FAIL: 22_locale/num_put/put/wchar_t/wrapped_locale.cc (test for excess errors)
+WARNING: 22_locale/num_put/put/wchar_t/wrapped_locale.cc compilation failed to produce executable
+FAIL: 22_locale/time_put/put/wchar_t/10.cc (test for excess errors)
+WARNING: 22_locale/time_put/put/wchar_t/10.cc compilation failed to produce executable
+FAIL: 22_locale/time_put/put/wchar_t/9.cc (test for excess errors)
+WARNING: 22_locale/time_put/put/wchar_t/9.cc compilation failed to produce executable
+FAIL: 22_locale/time_put/put/wchar_t/wrapped_env.cc (test for excess errors)
+WARNING: 22_locale/time_put/put/wchar_t/wrapped_env.cc compilation failed to produce executable
+FAIL: 22_locale/time_put/put/wchar_t/wrapped_locale.cc (test for excess errors)
+WARNING: 22_locale/time_put/put/wchar_t/wrapped_locale.cc compilation failed to produce executable
+FAIL: 23_containers/deque/cons/2.cc (test for excess errors)
+WARNING: 23_containers/deque/cons/2.cc compilation failed to produce executable
+FAIL: 23_containers/deque/modifiers/erase/1.cc (test for excess errors)
+WARNING: 23_containers/deque/modifiers/erase/1.cc compilation failed to produce executable
+FAIL: 23_containers/deque/operators/1.cc (test for excess errors)
+WARNING: 23_containers/deque/operators/1.cc compilation failed to produce executable
+FAIL: 23_containers/deque/requirements/citerators.cc (test for excess errors)
+WARNING: 23_containers/deque/requirements/citerators.cc compilation failed to produce executable
+FAIL: 23_containers/queue/members/7157.cc (test for excess errors)
+WARNING: 23_containers/queue/members/7157.cc compilation failed to produce executable
+FAIL: 25_algorithms/copy/3.cc (test for excess errors)
+WARNING: 25_algorithms/copy/3.cc compilation failed to produce executable
+FAIL: 25_algorithms/copy_n/move_iterators/1.cc (test for excess errors)
+WARNING: 25_algorithms/copy_n/move_iterators/1.cc compilation failed to produce executable
+FAIL: 25_algorithms/inplace_merge/1.cc (test for excess errors)
+WARNING: 25_algorithms/inplace_merge/1.cc compilation failed to produce executable
+FAIL: 25_algorithms/merge/1.cc (test for excess errors)
+WARNING: 25_algorithms/merge/1.cc compilation failed to produce executable
+FAIL: 25_algorithms/replace_copy/1.cc (test for excess errors)
+WARNING: 25_algorithms/replace_copy/1.cc compilation failed to produce executable
+FAIL: 25_algorithms/replace_copy_if/1.cc (test for excess errors)
+WARNING: 25_algorithms/replace_copy_if/1.cc compilation failed to produce executable
+FAIL: 25_algorithms/set_difference/1.cc (test for excess errors)
+WARNING: 25_algorithms/set_difference/1.cc compilation failed to produce executable
+FAIL: 25_algorithms/set_intersection/1.cc (test for excess errors)
+WARNING: 25_algorithms/set_intersection/1.cc compilation failed to produce executable
+FAIL: 25_algorithms/set_symmetric_difference/1.cc (test for excess errors)
+WARNING: 25_algorithms/set_symmetric_difference/1.cc compilation failed to produce executable
+FAIL: 25_algorithms/set_union/1.cc (test for excess errors)
+WARNING: 25_algorithms/set_union/1.cc compilation failed to produce executable
 FAIL: 25_algorithms/sort/34095.cc (test for excess errors)
 WARNING: 25_algorithms/sort/34095.cc compilation failed to produce executable
 FAIL: 25_algorithms/sort/34636.cc (test for excess errors)
 WARNING: 25_algorithms/sort/34636.cc compilation failed to produce executable
+FAIL: 25_algorithms/unique_copy/1.cc (test for excess errors)
+WARNING: 25_algorithms/unique_copy/1.cc compilation failed to produce executable
+FAIL: 25_algorithms/unique_copy/2.cc (test for excess errors)
+WARNING: 25_algorithms/unique_copy/2.cc compilation failed to produce executable
 XPASS: 26_numerics/headers/cmath/c99_classification_macros_c.cc (test for excess errors)
 FAIL: 27_io/basic_filebuf/overflow/char/13858.cc execution test
 FAIL: 27_io/basic_filebuf/overflow/wchar_t/13858.cc execution test
-FAIL: 27_io/basic_filebuf/underflow/wchar_t/9178.cc execution test
 FAIL: 27_io/basic_istream/exceptions/char/9561.cc execution test
-FAIL: ext/pb_ds/regression/hash_data_map_rand.cc execution test
-FAIL: ext/pb_ds/regression/hash_no_data_map_rand.cc execution test
+FAIL: 27_io/basic_ostream/inserters_character/char/9555-oc.cc (test for excess errors)
+WARNING: 27_io/basic_ostream/inserters_character/char/9555-oc.cc compilation failed to produce executable
+FAIL: 27_io/objects/char/12048-5.cc (test for excess errors)
+WARNING: 27_io/objects/char/12048-5.cc compilation failed to produce executable
+FAIL: ext/pb_ds/example/priority_queue_dijkstra.cc (test for excess errors)
+WARNING: ext/pb_ds/example/priority_queue_dijkstra.cc compilation failed to produce executable
+FAIL: ext/pb_ds/regression/hash_data_map_rand.cc (test for excess errors)
+WARNING: ext/pb_ds/regression/hash_data_map_rand.cc compilation failed to produce executable
+FAIL: ext/pb_ds/regression/hash_no_data_map_rand.cc (test for excess errors)
+WARNING: ext/pb_ds/regression/hash_no_data_map_rand.cc compilation failed to produce executable
 FAIL: ext/pb_ds/regression/priority_queue_rand.cc execution test
 FAIL: ext/pb_ds/regression/tree_data_map_rand.cc execution test
 FAIL: ext/pb_ds/regression/tree_no_data_map_rand.cc execution test
-FAIL: ext/pb_ds/regression/trie_no_data_map_rand.cc execution test
+FAIL: ext/pb_ds/regression/trie_data_map_rand.cc (test for excess errors)
+WARNING: ext/pb_ds/regression/trie_data_map_rand.cc compilation failed to produce executable
+FAIL: ext/pb_ds/regression/trie_no_data_map_rand.cc (test for excess errors)
+WARNING: ext/pb_ds/regression/trie_no_data_map_rand.cc compilation failed to produce executable
 
 		=== libstdc++ Summary ===
 
-# of expected passes		6858
-# of unexpected failures	19
+# of expected passes		6795
+# of unexpected failures	49
 # of unexpected successes	1
-# of expected failures		84
+# of expected failures		83
 # of unsupported tests		15
 
 Compiler version: 4.5.0 20090714 (experimental) [lto revision 149624] (lto merged with rev 149625) 

I still have to investigate what is going wrong here - all errors seem
to be type verification issues, so I guess sth doesn't work right here
and we fail to unify things properly.

Richard.

2009-07-15  Richard Guenther  <rguenther@suse.de>

	* gimple.c (iterative_hash_gimple_type): Remove the level argument.
	Query the pointer-map with the pre-computed hashes and update it.
	Deal with self-referencing types by storing zero early.
	(gimple_type_hash): Simplify accordingly.

Index: gcc/gimple.c
===================================================================
*** gcc/gimple.c	(revision 149668)
--- gcc/gimple.c	(working copy)
*************** gimple_types_compatible_p (tree t1, tree
*** 3537,3549 ****
    return same_p;
  }
  
- 
  /* Returning a hash value for gimple type TYPE combined with VAL.  */
  
  static hashval_t
! iterative_hash_gimple_type (const_tree type, hashval_t val, unsigned level)
  {
    hashval_t v;
  
    /* Combine a few common features of types so that types are grouped into
       smaller sets; when searching for existing matching types to merge,
--- 3537,3559 ----
    return same_p;
  }
  
  /* Returning a hash value for gimple type TYPE combined with VAL.  */
  
  static hashval_t
! iterative_hash_gimple_type (const_tree type, hashval_t val)
  {
    hashval_t v;
+   void **slot;
+ 
+   if ((slot = pointer_map_contains (type_hash_cache, type)) != NULL)
+     return iterative_hash_hashval_t (TREE_ADDRESSABLE (type),
+ 				     (hashval_t) (size_t) *slot);
+ 
+   /* To prevent infinite recursion with self-referential types use
+      zero as their hash-values.  We'll fix this up for uses by other
+      types below.  */
+   slot = pointer_map_insert (type_hash_cache, type);
+   *slot = (void *)0;
  
    /* Combine a few common features of types so that types are grouped into
       smaller sets; when searching for existing matching types to merge,
*************** iterative_hash_gimple_type (const_tree t
*** 3568,3592 ****
    /* Incorporate function return and argument types.  */
    if (TREE_CODE (type) == FUNCTION_TYPE || TREE_CODE (type) == METHOD_TYPE)
      {
        tree p;
  
        /* For method types also incorporate their parent class.  */
        if (TREE_CODE (type) == METHOD_TYPE)
! 	v = iterative_hash_gimple_type (TYPE_METHOD_BASETYPE (type), v, level);
  
!       v = iterative_hash_gimple_type (TREE_TYPE (type), v, level);
  
!       for (p = TYPE_ARG_TYPES (type); p; p = TREE_CHAIN (p))
! 	v = iterative_hash_gimple_type (TREE_VALUE (p), v, level);
      }
  
    /* For pointer and reference types, fold in information about the type
       pointed to.  */
    if (POINTER_TYPE_P (type) || TREE_CODE (type) == ARRAY_TYPE)
!     v = iterative_hash_gimple_type (TREE_TYPE (type), v, level);
  
-   /* For aggregate types, incorporate types signatures up to 5 levels
-      (to prevent infinite recursion in self-referential types).  */
    if (TREE_CODE (type) == RECORD_TYPE
        || TREE_CODE (type) == UNION_TYPE
        || TREE_CODE (type) == QUAL_UNION_TYPE)
--- 3578,3606 ----
    /* Incorporate function return and argument types.  */
    if (TREE_CODE (type) == FUNCTION_TYPE || TREE_CODE (type) == METHOD_TYPE)
      {
+       unsigned na;
        tree p;
  
        /* For method types also incorporate their parent class.  */
        if (TREE_CODE (type) == METHOD_TYPE)
! 	v = iterative_hash_gimple_type (TYPE_METHOD_BASETYPE (type), v);
  
!       v = iterative_hash_gimple_type (TREE_TYPE (type), v);
! 
!       for (p = TYPE_ARG_TYPES (type), na = 0; p; p = TREE_CHAIN (p))
! 	{
! 	  v = iterative_hash_gimple_type (TREE_VALUE (p), v);
! 	  na++;
! 	}
  
!       v = iterative_hash_hashval_t (na, v);
      }
  
    /* For pointer and reference types, fold in information about the type
       pointed to.  */
    if (POINTER_TYPE_P (type) || TREE_CODE (type) == ARRAY_TYPE)
!     v = iterative_hash_gimple_type (TREE_TYPE (type), v);
  
    if (TREE_CODE (type) == RECORD_TYPE
        || TREE_CODE (type) == UNION_TYPE
        || TREE_CODE (type) == QUAL_UNION_TYPE)
*************** iterative_hash_gimple_type (const_tree t
*** 3596,3609 ****
  
        for (f = TYPE_FIELDS (type), nf = 0; f; f = TREE_CHAIN (f))
  	{
! 	  if (level < 5)
! 	    v = iterative_hash_gimple_type (TREE_TYPE (f), v, level + 1);
  	  nf++;
  	}
  
        v = iterative_hash_hashval_t (nf, v);
      }
  
    return v;
  }
  
--- 3610,3624 ----
  
        for (f = TYPE_FIELDS (type), nf = 0; f; f = TREE_CHAIN (f))
  	{
! 	  v = iterative_hash_gimple_type (TREE_TYPE (f), v);
  	  nf++;
  	}
  
        v = iterative_hash_hashval_t (nf, v);
      }
  
+   *slot = (void *) (size_t) v;
+ 
    return v;
  }
  
*************** iterative_hash_gimple_type (const_tree t
*** 3619,3647 ****
  static hashval_t
  gimple_type_hash (const void *p)
  {
-   const_tree type;
-   void **slot;
-   hashval_t v;
- 
-   type = (const_tree) p;
- 
    if (type_hash_cache == NULL)
!     {
!       type_hash_cache = pointer_map_create ();
!       slot = NULL;
!     }
!   else
!     slot = pointer_map_contains (type_hash_cache, type);
  
!   if (slot)
!     v = (hashval_t) (size_t) *slot;
!   else
!     {
!       v = iterative_hash_gimple_type (type, 0, 0);
!       *pointer_map_insert (type_hash_cache, type) = (void *) (size_t) v;
!     }
! 
!   return v;
  }
  
  
--- 3634,3643 ----
  static hashval_t
  gimple_type_hash (const void *p)
  {
    if (type_hash_cache == NULL)
!     type_hash_cache = pointer_map_create ();
  
!   return iterative_hash_gimple_type ((const_tree )p, 0);
  }
  
  


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]