mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2024-12-13 23:29:03 +00:00
* ld-elfvsb/elfvsb.exp: Don't run any non-PIC tests on powerpc*-linux.
* ld-gc/gc.exp: Ensure powerpc64 test continues to fail. * ld-srec/srec.exp: Don't edit toc on powerpc64.
This commit is contained in:
parent
425b145b6e
commit
2893311c83
@ -1,3 +1,9 @@
|
|||||||
|
2011-02-09 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
|
* ld-elfvsb/elfvsb.exp: Don't run any non-PIC tests on powerpc*-linux.
|
||||||
|
* ld-gc/gc.exp: Ensure powerpc64 test continues to fail.
|
||||||
|
* ld-srec/srec.exp: Don't edit toc on powerpc64.
|
||||||
|
|
||||||
2011-01-23 Alan Modra <amodra@gmail.com>
|
2011-01-23 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
* ld-scripts/sane1.d, * ld-scripts/sane1.t: New test.
|
* ld-scripts/sane1.d, * ld-scripts/sane1.t: New test.
|
||||||
|
@ -249,6 +249,14 @@ proc visibility_run {visibility} {
|
|||||||
set VSBCFLAG ""
|
set VSBCFLAG ""
|
||||||
}}}}}}}}}
|
}}}}}}}}}
|
||||||
|
|
||||||
|
if { [istarget powerpc*-*-linux*] } {
|
||||||
|
# Testing non-PIC libraries is a waste of effort on any target.
|
||||||
|
# If you don't pass -fpic or -fPIC to gcc, gcc will assume quite
|
||||||
|
# reasonably that you are not compiling for a shared library.
|
||||||
|
# It can then make optimisations that result in shared library
|
||||||
|
# functions and variables not being overridable. Newer versions
|
||||||
|
# of gcc are more likely to do this.
|
||||||
|
} else {
|
||||||
# Compile the main program.
|
# Compile the main program.
|
||||||
if ![ld_compile "$CC -g $CFLAGS $SHCFLAG $VSBCFLAG" $srcdir/$subdir/main.c $tmpdir/mainnp.o] {
|
if ![ld_compile "$CC -g $CFLAGS $SHCFLAG $VSBCFLAG" $srcdir/$subdir/main.c $tmpdir/mainnp.o] {
|
||||||
unresolved "visibility ($visibility) (non PIC)"
|
unresolved "visibility ($visibility) (non PIC)"
|
||||||
@ -369,8 +377,11 @@ proc visibility_run {visibility} {
|
|||||||
visibility_test $visibility vp "visibility ($visibility)" mainnp.o sh1p.o sh2p.o elfvsb
|
visibility_test $visibility vp "visibility ($visibility)" mainnp.o sh1p.o sh2p.o elfvsb
|
||||||
} }
|
} }
|
||||||
}
|
}
|
||||||
}
|
}}
|
||||||
|
|
||||||
|
if { [istarget powerpc*-*-linux*] } {
|
||||||
|
# Don't bother.
|
||||||
|
} else {
|
||||||
# Now do the same tests again, but this time compile main.c PIC.
|
# Now do the same tests again, but this time compile main.c PIC.
|
||||||
if ![ld_compile "$CC -g $CFLAGS $SHCFLAG $VSBCFLAG -DSHARED $picflag" $srcdir/$subdir/main.c $tmpdir/mainp.o] {
|
if ![ld_compile "$CC -g $CFLAGS $SHCFLAG $VSBCFLAG -DSHARED $picflag" $srcdir/$subdir/main.c $tmpdir/mainp.o] {
|
||||||
unresolved "visibility ($visibility) (PIC main, non PIC so)"
|
unresolved "visibility ($visibility) (PIC main, non PIC so)"
|
||||||
@ -433,7 +444,7 @@ proc visibility_run {visibility} {
|
|||||||
} else {
|
} else {
|
||||||
unresolved "visibility ($visibility) (PIC main)"
|
unresolved "visibility ($visibility) (PIC main)"
|
||||||
}
|
}
|
||||||
}
|
}}
|
||||||
}
|
}
|
||||||
|
|
||||||
if [istarget mips*-*-*] {
|
if [istarget mips*-*-*] {
|
||||||
|
@ -27,6 +27,11 @@ if ![check_gc_sections_available] {
|
|||||||
set cflags "-ffunction-sections -fdata-sections"
|
set cflags "-ffunction-sections -fdata-sections"
|
||||||
set objfile "tmpdir/gc.o"
|
set objfile "tmpdir/gc.o"
|
||||||
|
|
||||||
|
if [istarget powerpc64*-*-*] {
|
||||||
|
# otherwise with -mcmodel=medium gcc we get XPASSes.
|
||||||
|
set cflags "$cflags -mminimal-toc"
|
||||||
|
}
|
||||||
|
|
||||||
if { [is_remote host] || [which $CC] != 0 } {
|
if { [is_remote host] || [which $CC] != 0 } {
|
||||||
ld_compile "$CC -c $CFLAGS $cflags" $srcdir/$subdir/gc.c $objfile
|
ld_compile "$CC -c $CFLAGS $cflags" $srcdir/$subdir/gc.c $objfile
|
||||||
}
|
}
|
||||||
|
@ -271,6 +271,10 @@ proc run_srec_test { test objs } {
|
|||||||
set flags "$flags -no-relax"
|
set flags "$flags -no-relax"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if [istarget powerpc64*-*-*] {
|
||||||
|
set flags "$flags --no-toc-optimize"
|
||||||
|
}
|
||||||
|
|
||||||
if { ![ld_simple_link $ld tmpdir/sr1 "$flags $objs"] \
|
if { ![ld_simple_link $ld tmpdir/sr1 "$flags $objs"] \
|
||||||
|| ![ld_simple_link $ld tmpdir/sr2.sr "$flags --oformat srec $objs"] } {
|
|| ![ld_simple_link $ld tmpdir/sr2.sr "$flags --oformat srec $objs"] } {
|
||||||
fail $test
|
fail $test
|
||||||
|
Loading…
Reference in New Issue
Block a user