1 # Copyright
2016-2022 Free Software Foundation
, Inc.
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.
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.
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
/>.
17 # This test can only be run
on targets which support DWARF
-4 and use gas.
18 if {![dwarf2_support
]} {
22 standard_testfile .c
-dw.S
24 # Make some DWARF
for the test.
25 set asm_file
[standard_output_file $srcfile2
]
26 Dwarf
::assemble $asm_file
{
31 {DW_AT_language @DW_LANG_C
}
37 type
: DW_TAG_base_type
{
38 {DW_AT_byte_size
4 DW_FORM_sdata
}
39 {DW_AT_encoding @DW_ATE_signed
}
44 {MACRO_AT_func
{mymain
}}
46 {DW_AT_main_subprogram
1 flag
}
53 if {[prepare_for_testing
"failed to prepare" ${testfile} \
54 [list $srcfile $asm_file
] {nodebug
}]} {
58 set have_index
[exec_has_index_section $binfile
]
60 # Test that the
"start" command stops in the "mymain" function.
61 # This should happen because we used DW_AT_main_subprogram to tell gdb
62 # that this was the real
"main".
64 if {[gdb_start_cmd
] < 0} {
65 untested
"could not start ${testfile}"
69 gdb_test_multiple
"" "stopped at mymain" {
70 -re
-wrap
"Temporary breakpoint .* mymain.*" {
73 -re
-wrap
"Temporary breakpoint .* main.*" {
75 setup_kfail
"gdb/24549" *-*-*