14ba85b20ab3e5efbaa69e650bd0599fb065e425
[deliverable/binutils-gdb.git] / ld / testsuite / ld-mn10300 / mn10300.exp
1 # Expect script for ld-mn10300 tests
2 # Copyright (C) 2007 Free Software Foundation
3 #
4 # This file is free software; you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation; either version 3 of the License, or
7 # (at your option) any later version.
8 #
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details.
13 #
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 #
18
19 if {!([istarget "am3*-*-*"]) && !([istarget "mn10300*-*-*"]) } {
20 return
21 }
22
23 # Set up a list as described in ld-lib.exp
24
25 set am33_tests {
26 {
27 "am33 string merging"
28 "--relax -Ttext 0x8000000"
29 ""
30 { "i36434.s" "i36434-2.s" }
31 { {objdump -dz i36434.d} }
32 "i36434.x"
33 }
34 {
35 "difference of two symbols"
36 "-Ttext 0"
37 ""
38 { "i112045-1.s" }
39 { {objdump -d i112045-1.d} }
40 "i112045-1.x"
41 }
42 {
43 "(shared) difference of two symbols"
44 "-shared"
45 ""
46 { "i112045-2.s" }
47 { {objdump -R i112045-2.d} }
48 "i112045-2.x"
49 }
50 {
51 "adjustment of symbols due to relaxation"
52 "-Tdata 1f -relax"
53 ""
54 { "i135409.s" }
55 { {readelf --syms i135409.d } }
56 "i135409.x"
57 }
58 }
59
60 run_ld_link_tests $am33_tests
61
62 proc i126256-test { } {
63 global CC
64 global ld
65 global srcdir
66 global subdir
67
68 set tmpdir tmpdir
69 set testname "Issue 126256 - seg fault whilst linking one shared library into another when relaxation is enabled."
70
71 if { ![ld_compile "$CC -mrelax -fPIC" $srcdir/$subdir/i126256-1.c $tmpdir/i126256-1.o] } {
72 unresolved $testname
73 return
74 }
75
76 if { ![ld_compile "$CC -mrelax -fPIC" $srcdir/$subdir/i126256-2.c $tmpdir/i126256-2.o] } {
77 unresolved $testname
78 return
79 }
80
81 if { ![ld_simple_link $ld $tmpdir/i126256-1.so "-shared $tmpdir/i126256-1.o -e 0"]} {
82 unresolved $testname
83 return
84 }
85
86 if { ![ld_simple_link $ld $tmpdir/i126256-2.so "--relax -shared $tmpdir/i126256-2.o $tmpdir/i126256-1.so -e 0"]} {
87 fail $testname
88 return
89 }
90
91 pass $testname
92 }
93
94 i126256-test
This page took 0.030632 seconds and 4 git commands to generate.