dejagnu: modularize gcc-dg-debug-runtest a bit

Move some functionality into a procedure of its own. This is only so that when
the patch for ctf comes along, the gcc-dg-debug-runtest procedure looks bit
more uniform.

gcc/testsuite/ChangeLog:

	* lib/gcc-dg.exp (gcc-dg-target-supports-debug-format): New procedure.
This commit is contained in:
Indu Bhagat 2021-05-20 10:32:38 -07:00 committed by Jose E. Marchesi
parent 5783a0cc78
commit 532617d636

View file

@ -621,18 +621,27 @@ proc gcc-dg-runtest { testcases flags default-extra-flags } {
}
}
proc gcc-dg-debug-runtest { target_compile trivial opt_opts testcases } {
# Check if the target system supports the debug format
proc gcc-dg-target-supports-debug-format { target_compile trivial type } {
global srcdir subdir
set comp_output [$target_compile \
"$srcdir/$subdir/$trivial" "trivial.S" assembly \
"additional_flags=$type"]
if { ! [string match "*: target system does not support the * debug format*" \
$comp_output] } {
remove-build-file "trivial.S"
return 1
}
return 0
}
proc gcc-dg-debug-runtest { target_compile trivial opt_opts testcases } {
if ![info exists DEBUG_TORTURE_OPTIONS] {
set DEBUG_TORTURE_OPTIONS ""
foreach type {-gdwarf-2 -gstabs -gstabs+ -gxcoff -gxcoff+} {
set comp_output [$target_compile \
"$srcdir/$subdir/$trivial" "trivial.S" assembly \
"additional_flags=$type"]
if { ! [string match "*: target system does not support the * debug format*" \
$comp_output] } {
remove-build-file "trivial.S"
if [expr [gcc-dg-target-supports-debug-format \
$target_compile $trivial $type]] {
foreach level {1 "" 3} {
if { ($type == "-gdwarf-2") && ($level != "") } {
lappend DEBUG_TORTURE_OPTIONS [list "${type}" "-g${level}"]