]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blob - gdb/testsuite/gdb.dwarf2/fission-base.exp
GDB copyright headers update after running GDB's copyright.py script.
[thirdparty/binutils-gdb.git] / gdb / testsuite / gdb.dwarf2 / fission-base.exp
1 # Copyright 2012-2016 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
16 load_lib dwarf.exp
17
18 # We run objcopy locally to split out the .dwo file.
19 if [is_remote host] {
20 return 0
21 }
22
23 # This test can only be run on targets which support DWARF-2 and use gas.
24 if ![dwarf2_support] {
25 return 0
26 }
27
28 # This test can only be run on x86-64 targets.
29 if {![istarget x86_64-*] || ![is_lp64_target]} {
30 return 0
31 }
32
33 standard_testfile .S
34
35 if [build_executable_from_fission_assembler \
36 "$testfile.exp" "$binfile" "$srcfile" {nodebug}] {
37 return -1
38 }
39
40 gdb_exit
41 gdb_start
42 gdb_reinitialize_dir $srcdir/$subdir
43 # Make sure we can find the .dwo file, regardless of whether we're
44 # running in parallel mode.
45 gdb_test_no_output "set debug-file-directory [file dirname $binfile]" \
46 "set debug-file-directory"
47 gdb_load $binfile
48
49 if ![runto_main] {
50 return -1
51 }
52
53 # Do a few basic things to verify we're finding the DWO debug info.
54
55 gdb_test "ptype main" "type = int \\(\\)"
56 gdb_test "ptype func" "type = int \\(int\\)"
57
58 gdb_test "frame" "#0 *main \\(\\) at $testfile\\.c:$decimal.*" \
59 "frame in main"
60
61 gdb_test "break func" "Breakpoint.*at.* file .*$testfile\\.c, line .*"
62
63 gdb_test "continue" "Breakpoint.* func \\(arg=-1\\).*" \
64 "continue to func"
65
66 gdb_test "frame" "#0 *func \\(arg=-1\\) at $testfile\\.c:$decimal.*" \
67 "frame in func"