2010-03-31 Kai TIetz <kai.tietz@onevision.com>
* ld-pe/basefile1.s: New. * ld-pe/pe-compile.exp: Add base-file test.
This commit is contained in:
parent
b706dc83c1
commit
1e972e651b
3 changed files with 75 additions and 0 deletions
|
@ -1,3 +1,8 @@
|
|||
2010-03-31 Kai TIetz <kai.tietz@onevision.com>
|
||||
|
||||
* ld-pe/basefile1.s: New.
|
||||
* ld-pe/pe-compile.exp: Add base-file test.
|
||||
|
||||
2010-03-31 Hans-Peter Nilsson <hp@axis.com>
|
||||
|
||||
PR ld/11458
|
||||
|
|
18
ld/testsuite/ld-pe/basefile1.s
Normal file
18
ld/testsuite/ld-pe/basefile1.s
Normal file
|
@ -0,0 +1,18 @@
|
|||
.globl _start
|
||||
.globl start
|
||||
.text
|
||||
_start:
|
||||
start:
|
||||
.long 0
|
||||
|
||||
.globl _d1
|
||||
.globl _d2
|
||||
.globl _d3
|
||||
.data
|
||||
_d1:
|
||||
.long 1
|
||||
_d2:
|
||||
.secrel32 _d3
|
||||
_d3:
|
||||
.long 2
|
||||
|
|
@ -34,6 +34,47 @@ if { [which $CC] == 0 } {
|
|||
return
|
||||
}
|
||||
|
||||
proc build_basefile1_o {} {
|
||||
global CC
|
||||
global CFLAGS
|
||||
global srcdir
|
||||
global subdir
|
||||
|
||||
# Compile the object file.
|
||||
if ![ld_compile "$CC $CFLAGS" $srcdir/$subdir/basefile1.s tmpdir/basefile1.o] {
|
||||
fail "compiling basefile1 object"
|
||||
}
|
||||
}
|
||||
|
||||
proc run_basefile_test { testname } {
|
||||
global LD
|
||||
global DLLTOOL
|
||||
global srcdir
|
||||
global subdir
|
||||
global verbose
|
||||
|
||||
if ![ld_simple_link "$LD -e start \
|
||||
--base-file=tmpdir/$testname.base \
|
||||
--export-all-symbols" tmpdir/$testname.dll \
|
||||
"tmpdir/basefile1.o"] {
|
||||
fail "linking DLL"
|
||||
return
|
||||
}
|
||||
|
||||
if { $verbose > 2 } then { verbose "output is [file_contents tmpdir/$testname.base]" 3 }
|
||||
|
||||
catch "exec wc -c tmpdir/$testname.base" err
|
||||
|
||||
if ![string match "0 tmpdir/$testname.base" $err] then {
|
||||
send_log "$err\n"
|
||||
if { $verbose == 2 } then { verbose "$err" 2 }
|
||||
fail $testname
|
||||
return
|
||||
}
|
||||
|
||||
pass "$testname"
|
||||
}
|
||||
|
||||
proc build_vers_script_dll_o {} {
|
||||
global CC
|
||||
global CFLAGS
|
||||
|
@ -77,6 +118,17 @@ run_ver_script_test "vers-script-2"
|
|||
run_ver_script_test "vers-script-3"
|
||||
run_ver_script_test "vers-script-4"
|
||||
|
||||
if {[istarget i*86-*-cygwin*]
|
||||
|| [istarget i*86-*-pe]
|
||||
|| [istarget i*86-*-mingw*]
|
||||
|| [istarget x86_64-*-mingw*] } {
|
||||
|
||||
build_basefile1_o
|
||||
run_basefile_test "basefile-secrel"
|
||||
} else {
|
||||
untested "PE basefile test"
|
||||
}
|
||||
|
||||
set align_tests {
|
||||
{"aligned common 1" "" "" {aligncomm-1.c}
|
||||
{{nm -C aligncomm.d}} "aligncomm-1.x"}
|
||||
|
|
Loading…
Reference in a new issue