]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - ld/testsuite/ld-mn10300/mn10300.exp
* doc/as.texinfo (Section): Replace "subsegment" with subsection".
[thirdparty/binutils-gdb.git] / ld / testsuite / ld-mn10300 / mn10300.exp
CommitLineData
bfff1642
NC
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
19if {!([istarget "am3*-*-*"]) && !([istarget "mn10300*-*-*"]) } {
20 return
21}
22
23# Set up a list as described in ld-lib.exp
24
25set 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
60run_ld_link_tests $am33_tests
61
62proc 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
94i126256-test