OLD | NEW |
1 # Copyright 2011-2012 Free Software Foundation, Inc. | 1 # Copyright 2011-2012 Free Software Foundation, Inc. |
2 | 2 |
3 # This program is free software; you can redistribute it and/or modify | 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 | 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 | 5 # the Free Software Foundation; either version 3 of the License, or |
6 # (at your option) any later version. | 6 # (at your option) any later version. |
7 # | 7 # |
8 # This program is distributed in the hope that it will be useful, | 8 # This program is distributed in the hope that it will be useful, |
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
11 # GNU General Public License for more details. | 11 # GNU General Public License for more details. |
12 # | 12 # |
13 # You should have received a copy of the GNU General Public License | 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/>. | 14 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
15 load_lib dwarf.exp | 15 load_lib dwarf.exp |
16 | 16 |
17 # This test can only be run on targets which support DWARF-2 and use gas. | 17 # This test can only be run on targets which support DWARF-2 and use gas. |
18 if {![dwarf2_support]} { | 18 if {![dwarf2_support]} { |
19 return 0 | 19 return 0 |
20 } | 20 } |
21 | 21 |
22 set testfile "implptr-64bit" | 22 standard_testfile .S |
23 set srcfile ${testfile}.S | |
24 set mainfile main.c | 23 set mainfile main.c |
25 | 24 |
26 proc test { dwarf_version offset_size addr_size ref_addr_size } { | 25 proc test { dwarf_version offset_size addr_size ref_addr_size } { |
27 global testfile srcfile mainfile | 26 global testfile srcfile mainfile |
28 | 27 |
29 # 32-bit targets do not support any of the testcases; keep quiet there. | 28 # 32-bit targets do not support any of the testcases; keep quiet there. |
30 set opts {quiet} | 29 set opts {quiet} |
31 foreach n { dwarf_version offset_size addr_size ref_addr_size } { | 30 foreach n { dwarf_version offset_size addr_size ref_addr_size } { |
32 lappend opts "additional_flags=-D[string toupper $n]=[expr "\$$n"]" | 31 lappend opts "additional_flags=-D[string toupper $n]=[expr "\$$n"]" |
33 } | 32 } |
34 | 33 |
35 set name "d${dwarf_version}o${offset_size}a${addr_size}r${ref_addr_size}" | 34 set name "d${dwarf_version}o${offset_size}a${addr_size}r${ref_addr_size}" |
36 set executable ${testfile}-${name} | 35 set executable ${testfile}-${name} |
37 if [prepare_for_testing ${testfile}.exp $executable "${srcfile} ${mainfile}"
$opts] { | 36 if [prepare_for_testing ${testfile}.exp $executable "${srcfile} ${mainfile}"
$opts] { |
38 return -1 | 37 return -1 |
39 } | 38 } |
40 | 39 |
41 if ![runto_main] { | 40 if ![runto_main] { |
42 return -1 | 41 return -1 |
43 } | 42 } |
44 | 43 |
45 gdb_test "p/x p->f" " = 0x1010101" $name | 44 gdb_test "p/x p->f" " = 0x1010101" $name |
46 } | 45 } |
47 | 46 |
48 # DWARF_VERSION OFFSET_SIZE ADDR_SIZE REF_ADDR_SIZE | 47 # DWARF_VERSION OFFSET_SIZE ADDR_SIZE REF_ADDR_SIZE |
49 test 2 8 4 4 | 48 test 2 8 4 4 |
50 test 2 4 8 8 | 49 test 2 4 8 8 |
51 test 3 8 4 8 | 50 test 3 8 4 8 |
52 test 3 4 8 4 | 51 test 3 4 8 4 |
OLD | NEW |