target-supports.exp (check_effective_target_spu_auto_overlay): New procedure.

* lib/target-supports.exp (check_effective_target_spu_auto_overlay):
	New procedure.
	* lib/compat.exp (compat-execute): Use it to test whether toolchain
	supports automatic overlay generation for the SPU.

From-SVN: r138064
This commit is contained in:
Ulrich Weigand 2008-07-22 17:21:12 +00:00 committed by Ulrich Weigand
parent 9cad01cefb
commit 738832558f
3 changed files with 21 additions and 1 deletions

View File

@ -1,3 +1,10 @@
2008-07-22 Ulrich Weigand <Ulrich.Weigand@de.ibm.com>
* lib/target-supports.exp (check_effective_target_spu_auto_overlay):
New procedure.
* lib/compat.exp (compat-execute): Use it to test whether toolchain
supports automatic overlay generation for the SPU.
2008-07-22 Daniel Kraft <d@domob.eu>
PR fortran/29835

View File

@ -280,7 +280,7 @@ proc compat-execute { src1 sid use_alt } {
# On the SPU, most of the compat test cases exceed local store size.
# Use automatic overlay support to make them fit.
if { [istarget spu-*-elf*] } {
if { [check_effective_target_spu_auto_overlay] } {
set extra_flags_1 "$extra_flags_1 -Wl,--auto-overlay"
set extra_flags_1 "$extra_flags_1 -ffunction-sections"
set extra_flags_2 "$extra_flags_2 -ffunction-sections"

View File

@ -1390,6 +1390,19 @@ proc check_effective_target_powerpc_altivec { } {
}
}
# Return 1 if this is a SPU target with a toolchain that
# supports automatic overlay generation.
proc check_effective_target_spu_auto_overlay { } {
if { [istarget spu*-*-elf*] } {
return [check_no_compiler_messages spu_auto_overlay executable {
int main (void) { }
} "-Wl,--auto-overlay" ]
} else {
return 0
}
}
# The VxWorks SPARC simulator accepts only EM_SPARC executables and
# chokes on EM_SPARC32PLUS or EM_SPARCV9 executables. Return 1 if the
# test environment appears to run executables on such a simulator.