* ld-sh/sh64/rd-sh64.exp: New framework file.
* ld-sh/sh64/init-cmpct.d, ld-sh/sh64/init-media.d, ld-sh/sh64/init64.d, ld-sh/sh64/init.s: New tests for correct setting of ISA bit for init and fini entry-points.
This commit is contained in:
parent
3b587c71d7
commit
30c8cc6872
|
@ -1,3 +1,10 @@
|
||||||
|
2002-08-23 Stephen Clarke <stephen.clarke@superh.com>
|
||||||
|
|
||||||
|
* ld-sh/sh64/rd-sh64.exp: New framework file.
|
||||||
|
* ld-sh/sh64/init-cmpct.d, ld-sh/sh64/init-media.d,
|
||||||
|
ld-sh/sh64/init64.d, ld-sh/sh64/init.s: New tests for
|
||||||
|
correct setting of ISA bit for init and fini entry-points.
|
||||||
|
|
||||||
2002-08-16 Stephen Clarke <stephen.clarke@superh.com>
|
2002-08-16 Stephen Clarke <stephen.clarke@superh.com>
|
||||||
|
|
||||||
* ld-sh/sh64/sh64.exp: Add dlsection.
|
* ld-sh/sh64/sh64.exp: Add dlsection.
|
||||||
|
|
|
@ -0,0 +1,20 @@
|
||||||
|
#source: init.s
|
||||||
|
#as: --abi=32 --isa=SHcompact
|
||||||
|
#ld: -shared -mshelf32
|
||||||
|
#readelf: -d
|
||||||
|
#target: sh64-*-elf
|
||||||
|
|
||||||
|
# Make sure that the lsb of DT_INIT and DT_FINI entries is not set
|
||||||
|
# when _init and _fini are SHcompact code.
|
||||||
|
|
||||||
|
Dynamic segment at offset 0x358 contains 8 entries:
|
||||||
|
Tag Type Name/Value
|
||||||
|
0x0000000c \(INIT\) 0x346
|
||||||
|
0x0000000d \(FINI\) 0x34e
|
||||||
|
0x00000004 \(HASH\) 0x94
|
||||||
|
0x00000005 \(STRTAB\) 0x2d4
|
||||||
|
0x00000006 \(SYMTAB\) 0x144
|
||||||
|
0x0000000a \(STRSZ\) 114 \(bytes\)
|
||||||
|
0x0000000b \(SYMENT\) 16 \(bytes\)
|
||||||
|
0x00000000 \(NULL\) 0x0
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
#source: init.s
|
||||||
|
#as: --abi=32 --isa=SHmedia
|
||||||
|
#ld: -shared -mshelf32
|
||||||
|
#readelf: -d
|
||||||
|
#target: sh64-*-elf
|
||||||
|
|
||||||
|
# Make sure that the lsb of DT_INIT and DT_FINI entries is set
|
||||||
|
# when _init and _fini are SHmedia code.
|
||||||
|
|
||||||
|
Dynamic segment at offset 0x368 contains 8 entries:
|
||||||
|
Tag Type Name/Value
|
||||||
|
0x0000000c \(INIT\) 0x347
|
||||||
|
0x0000000d \(FINI\) 0x357
|
||||||
|
0x00000004 \(HASH\) 0x94
|
||||||
|
0x00000005 \(STRTAB\) 0x2d4
|
||||||
|
0x00000006 \(SYMTAB\) 0x144
|
||||||
|
0x0000000a \(STRSZ\) 114 \(bytes\)
|
||||||
|
0x0000000b \(SYMENT\) 16 \(bytes\)
|
||||||
|
0x00000000 \(NULL\) 0x0
|
|
@ -0,0 +1,16 @@
|
||||||
|
.section .text,"ax"
|
||||||
|
.global _init
|
||||||
|
.type _init,@function
|
||||||
|
_init:
|
||||||
|
nop
|
||||||
|
nop
|
||||||
|
nop
|
||||||
|
nop
|
||||||
|
|
||||||
|
.global _fini
|
||||||
|
.type _fini,@function
|
||||||
|
_fini:
|
||||||
|
nop
|
||||||
|
nop
|
||||||
|
nop
|
||||||
|
nop
|
|
@ -0,0 +1,19 @@
|
||||||
|
#source: init.s
|
||||||
|
#as: --abi=64
|
||||||
|
#ld: -shared -mshelf64
|
||||||
|
#readelf: -d
|
||||||
|
#target: sh64-*-elf
|
||||||
|
|
||||||
|
# Make sure that the lsb of DT_INIT and DT_FINI entries is set
|
||||||
|
# when _init and _fini are SHmedia code.
|
||||||
|
|
||||||
|
Dynamic segment at offset 0x488 contains 8 entries:
|
||||||
|
Tag Type Name/Value
|
||||||
|
0x000000000000000c \(INIT\) 0x463
|
||||||
|
0x000000000000000d \(FINI\) 0x473
|
||||||
|
0x0000000000000004 \(HASH\) 0xe8
|
||||||
|
0x0000000000000005 \(STRTAB\) 0x3f0
|
||||||
|
0x0000000000000006 \(SYMTAB\) 0x198
|
||||||
|
0x000000000000000a \(STRSZ\) 114 \(bytes\)
|
||||||
|
0x000000000000000b \(SYMENT\) 24 \(bytes\)
|
||||||
|
0x0000000000000000 \(NULL\) 0x0
|
|
@ -0,0 +1,30 @@
|
||||||
|
# Expect script for run_dump_test based ld-sh/sh64 tests.
|
||||||
|
# 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.
|
||||||
|
#
|
||||||
|
# Written by Stephen Clarke (stephen.clarke@superh.com)
|
||||||
|
#
|
||||||
|
|
||||||
|
if ![istarget sh64-*-*] {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
set rd_test_list [lsort [glob -nocomplain $srcdir/$subdir/*.d]]
|
||||||
|
foreach sh64test $rd_test_list {
|
||||||
|
# We need to strip the ".d", but can leave the dirname.
|
||||||
|
verbose [file rootname $sh64test]
|
||||||
|
run_dump_test [file rootname $sh64test]
|
||||||
|
}
|
Loading…
Reference in New Issue