Commit bb120fb0 by Tom de Vries Committed by Tom de Vries

Fix sigsegv on -fdump-tree-all-enumerate_locals

2018-07-07  Tom de Vries  <tdevries@suse.de>

	* tree-dfa.c (dump_enumerated_decls): Handle cfun->cfg == NULL.

	* gcc.misc-tests/options.exp (check_for_all_options): Clean up dump
	files.
	(get_dump_flags): New proc.
	(toplevel): Test all dump flags.

From-SVN: r262500
parent e730a0ef
2018-07-07 Tom de Vries <tdevries@suse.de>
* tree-dfa.c (dump_enumerated_decls): Handle cfun->cfg == NULL.
2018-07-07 Aldy Hernandez <aldyh@redhat.com>
* tree-vrp.c (vrp_int_const_binop): Change overflow type to
......
2018-07-07 Tom de Vries <tdevries@suse.de>
* gcc.misc-tests/options.exp (check_for_all_options): Clean up dump
files.
(get_dump_flags): New proc.
(toplevel): Test all dump flags.
2018-07-07 Eric Botcazou <ebotcazou@adacore.com>
* gnat.dg/stack_usage6.adb: New test.
......
......@@ -52,6 +52,10 @@ proc check_for_all_options {language gcc_options compiler_pattern as_pattern ld_
}
set gcc_output [gcc_target_compile $filename.c $filename.x executable $gcc_options]
remote_file build delete $filename.c $filename.x $filename.gcno
set dumpfiles [glob -nocomplain $filename.c.*]
foreach dumpfile $dumpfiles {
remote_file build delete $dumpfile
}
if {![regexp -- "/${compiler}(\\.exe)? -quiet.*$compiler_pattern" $gcc_output]} {
fail "$test (compiler options)"
......@@ -70,4 +74,38 @@ proc check_for_all_options {language gcc_options compiler_pattern as_pattern ld_
check_for_all_options c {--coverage} {-fprofile-arcs -ftest-coverage} {} {-lgcov}
proc get_dump_flags {} {
set res [list]
global srcdir
set file "$srcdir/../dumpfile.c"
set a [open $file]
set lines [split [read $a] "\n"]
close $a
set domatch 0
foreach line $lines {
if { [regexp "dump_options.* =" $line] } {
set domatch 1
} elseif { [regexp "^\};" $line] } {
set domatch 0
}
if { $domatch } {
if { [regexp "\"(.*)\"" $line match submatch] } {
lappend res $submatch
}
}
}
return $res
}
foreach flag [get_dump_flags] {
check_for_all_options c -fdump-tree-all-$flag {} {} {}
check_for_all_options c -fdump-ipa-all-$flag {} {} {}
check_for_all_options c -fdump-rtl-all-$flag {} {} {}
check_for_all_options c -fdump-lang-all-$flag {} {} {}
}
gcc_parallel_test_enable 1
......@@ -992,6 +992,9 @@ dump_enumerated_decls_push (tree *tp, int *walk_subtrees, void *data)
void
dump_enumerated_decls (FILE *file, dump_flags_t flags)
{
if (!cfun->cfg)
return;
basic_block bb;
struct walk_stmt_info wi;
auto_vec<numbered_tree, 40> decl_list;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment