mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-26 21:00:29 +00:00
debuginfo-tests: Add support for an lldb wrapper script
to be used on darwin in lieu of gdb. llvm-svn: 190186
This commit is contained in:
parent
0d8da69006
commit
271495ae9a
@ -11,8 +11,13 @@
|
||||
# and run the script generated from source program comments. Finally,
|
||||
# the debugger output is checked, using FileCheck, to validate
|
||||
# debugging information.
|
||||
#
|
||||
# On Darwin the default is to use the llgdb.py wrapper script which
|
||||
# translates gdb commands into their lldb equivalents.
|
||||
|
||||
use File::Basename;
|
||||
use Config;
|
||||
use Cwd;
|
||||
|
||||
my $testcase_file = $ARGV[0];
|
||||
my $executable_file = $ARGV[1];
|
||||
@ -23,6 +28,11 @@ my $output_dir = dirname $executable_file;
|
||||
my $debugger_script_file = "$output_dir/$input_filename.debugger.script";
|
||||
my $output_file = "$output_dir/$input_filename.gdb.output";
|
||||
|
||||
my %cmd_map = ();
|
||||
# Assume lldb to be the debugger on Darwin.
|
||||
my $use_lldb = 0;
|
||||
$use_lldb = 1 if ($Config{osname} eq "darwin");
|
||||
|
||||
# Extract debugger commands from testcase. They are marked with DEBUGGER:
|
||||
# at the beginning of a comment line.
|
||||
open(INPUT, $testcase_file);
|
||||
@ -44,8 +54,15 @@ close(OUTPUT);
|
||||
# setup debugger and debugger options to run a script.
|
||||
my $my_debugger = $ENV{'DEBUGGER'};
|
||||
if (!$my_debugger) {
|
||||
$my_debugger = "gdb";
|
||||
if ($use_lldb) {
|
||||
my $path = dirname(Cwd::abs_path($0));
|
||||
$my_debugger = "/usr/bin/env python $path/../tools/clang/test/debuginfo-tests/llgdb.py";
|
||||
} else {
|
||||
$my_debugger = "gdb";
|
||||
}
|
||||
}
|
||||
|
||||
# quiet / exit after cmdline / no init file / execute script
|
||||
my $debugger_options = "-q -batch -n -x";
|
||||
|
||||
# run debugger and capture output.
|
||||
|
Loading…
Reference in New Issue
Block a user