* ld-selective/keepdot.d, ld-selective/keepdot.ld,
ld-selective/keepdot.s, ld-selective/keepdot0.d: New tests. * ld-selective/sel-dump.exp: New, driver for run_dump_test:s.
This commit is contained in:
parent
f5e547d684
commit
b611beb043
7 changed files with 88 additions and 0 deletions
|
@ -1,3 +1,9 @@
|
|||
2002-02-05 Hans-Peter Nilsson <hp@axis.com>
|
||||
|
||||
* ld-selective/keepdot.d, ld-selective/keepdot.ld,
|
||||
ld-selective/keepdot.s, ld-selective/keepdot0.d: New tests.
|
||||
* ld-selective/sel-dump.exp: New, driver for run_dump_test:s.
|
||||
|
||||
2002-02-04 Hans-Peter Nilsson <hp@bitrange.com>
|
||||
|
||||
* ld-mmix/bpo-18.d, ld-mmix/bpo64addr.ld, ld-mmix/bpo-18m.d,
|
||||
|
|
9
ld/testsuite/ld-selective/keepdot.d
Normal file
9
ld/testsuite/ld-selective/keepdot.d
Normal file
|
@ -0,0 +1,9 @@
|
|||
#ld: --gc-sections -Bstatic -e _start -T$srcdir/$subdir/keepdot.ld
|
||||
#name: Preserve default . = 0
|
||||
#objdump: -h
|
||||
|
||||
# Check that GC:ing does not mess up the default value for dot.
|
||||
|
||||
#...
|
||||
[ ]+.[ ]+\.myinit[ ]+0+[48][ ]+0+[ ]+0+ .*
|
||||
#pass
|
5
ld/testsuite/ld-selective/keepdot.ld
Normal file
5
ld/testsuite/ld-selective/keepdot.ld
Normal file
|
@ -0,0 +1,5 @@
|
|||
SECTIONS
|
||||
{
|
||||
.myinit : { KEEP (*(.myinit)) }
|
||||
.mytext : { *(.mytext*) *(.text*) }
|
||||
}
|
17
ld/testsuite/ld-selective/keepdot.s
Normal file
17
ld/testsuite/ld-selective/keepdot.s
Normal file
|
@ -0,0 +1,17 @@
|
|||
.text
|
||||
.stabs "int:t(0,1)=r(0,1);-2147483648;2147483647;",128,0,0,0
|
||||
.stabs "char:t(0,2)=r(0,2);0;127;",128,0,0,0
|
||||
|
||||
.section .myinit,"ax",@progbits
|
||||
.stabs "barxfoo:F(0,20)",36,0,2,_bar
|
||||
.global _bar
|
||||
.global _start
|
||||
_start:
|
||||
_bar:
|
||||
.long 123
|
||||
|
||||
.section .mytext.baz,"ax",@progbits
|
||||
.stabs "baz:F(0,20)",36,0,6,_baz
|
||||
.global _baz
|
||||
_baz:
|
||||
.long 456
|
11
ld/testsuite/ld-selective/keepdot0.d
Normal file
11
ld/testsuite/ld-selective/keepdot0.d
Normal file
|
@ -0,0 +1,11 @@
|
|||
#source: keepdot.s
|
||||
#ld: --gc-sections -Bstatic -e _start -T$srcdir/$subdir/keepdot0.ld
|
||||
#name: Preserve explicit . = 0
|
||||
#objdump: -h
|
||||
|
||||
# Check that GC:ing does not mess up the value for dot when specified
|
||||
# as 0.
|
||||
|
||||
#...
|
||||
[ ]+.[ ]+\.myinit[ ]+0+[48][ ]+0+[ ]+0+ .*
|
||||
#pass
|
6
ld/testsuite/ld-selective/keepdot0.ld
Normal file
6
ld/testsuite/ld-selective/keepdot0.ld
Normal file
|
@ -0,0 +1,6 @@
|
|||
SECTIONS
|
||||
{
|
||||
. = 0x0;
|
||||
.myinit : { KEEP (*(.myinit)) }
|
||||
.mytext : { *(.mytext*) *(.text*) }
|
||||
}
|
34
ld/testsuite/ld-selective/sel-dump.exp
Normal file
34
ld/testsuite/ld-selective/sel-dump.exp
Normal file
|
@ -0,0 +1,34 @@
|
|||
# Expect script for ld selective linking tests running run_dump_test
|
||||
# Copyright 2002 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
|
||||
# Test for ELF here, so we don't have to qualify on ELF specifically
|
||||
# in every .d-file.
|
||||
|
||||
if { ![istarget *-*-linux*]
|
||||
&& ![istarget *-*-gnu]
|
||||
&& ![istarget *-*-elf] } {
|
||||
return
|
||||
}
|
||||
|
||||
load_lib ld-lib.exp
|
||||
|
||||
set test_list [lsort [glob -nocomplain $srcdir/$subdir/*.d]]
|
||||
for { set i 0 } { $i < [llength $test_list] } { incr i } {
|
||||
# We need to strip the ".d", but can leave the dirname.
|
||||
verbose [file rootname [lindex $test_list $i]]
|
||||
run_dump_test [file rootname [lindex $test_list $i]]
|
||||
}
|
Loading…
Reference in a new issue