xref: /netbsd-src/external/gpl3/gdb.old/dist/gdb/testsuite/gdb.dwarf2/implptr-64bit.exp (revision 212397c69a103ae7e5eafa8731ddfae671d2dee7)
1# Copyright 2011-2015 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/>.
15load_lib dwarf.exp
16
17# This test can only be run on targets which support DWARF-2 and use gas.
18if {![dwarf2_support]} {
19    return 0
20}
21
22standard_testfile .S
23set mainfile main.c
24
25proc test { dwarf_version offset_size addr_size ref_addr_size two_cu } {
26    global testfile srcfile mainfile
27
28    # 32-bit targets do not support any of the testcases; keep quiet there.
29    set opts {quiet}
30    foreach n { dwarf_version offset_size addr_size ref_addr_size two_cu } {
31	lappend opts "additional_flags=-D[string toupper $n]=[expr "\$$n"]"
32    }
33
34    set name "d${dwarf_version}o${offset_size}a${addr_size}r${ref_addr_size}t${two_cu}"
35    set executable ${testfile}-${name}
36    if [prepare_for_testing ${testfile}.exp $executable "${srcfile} ${mainfile}" $opts] {
37	return -1
38    }
39
40    if ![runto_main] {
41	return -1
42    }
43
44    gdb_test "p/x p->f" " = 0x1010101" $name
45}
46
47#    DWARF_VERSION OFFSET_SIZE ADDR_SIZE REF_ADDR_SIZE TWO_CU
48test 2 8 4 4 0
49test 2 4 8 8 0
50test 3 8 4 8 0
51test 3 4 8 4 0
52test 2 8 4 4 1
53test 2 4 8 8 1
54test 3 8 4 8 1
55test 3 4 8 4 1
56