1# Copyright 2012-2020 Free Software Foundation, Inc. 2 3# This program is free software; you can redistribute it and/or modify 4# it under the terms of the GNU General Public License as published by 5# the Free Software Foundation; either version 3 of the License, or 6# (at your option) any later version. 7# 8# This program is distributed in the hope that it will be useful, 9# but WITHOUT ANY WARRANTY; without even the implied warranty of 10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11# GNU General Public License for more details. 12# 13# You should have received a copy of the GNU General Public License 14# along with this program. If not, see <http://www.gnu.org/licenses/>. 15 16load_lib dwarf.exp 17 18# We run objcopy locally to split out the .dwo file. 19if [is_remote host] { 20 return 0 21} 22 23# This test can only be run on targets which support DWARF-2 and use gas. 24if ![dwarf2_support] { 25 return 0 26} 27 28# Some targets have leading underscores on assembly symbols. 29set additional_flags [gdb_target_symbol_prefix_flags_asm] 30 31standard_testfile .S 32 33if [build_executable_from_fission_assembler \ 34 "$testfile.exp" "$binfile" "$srcfile" \ 35 [list nodebug $additional_flags]] { 36 return -1 37} 38 39gdb_exit 40gdb_start 41gdb_reinitialize_dir $srcdir/$subdir 42# Make sure we can find the .dwo file, regardless of whether we're 43# running in parallel mode. 44gdb_test_no_output "set debug-file-directory [file dirname $binfile]" \ 45 "set debug-file-directory" 46gdb_load $binfile 47 48gdb_test "break main" "Breakpoint.*at.*" 49 50gdb_test "ptype baz" "type = class foo {.*" 51 52# If we get this far gdb didn't crash, nor did an error occur. 53pass $testfile 54 55gdb_unload 56# If we get this far gdb didn't crash, nor did an error occur. 57pass "$testfile - unload" 58