ld/testsuite

2013-12-18  Vidya Praveen  <vidyapraveen@arm.com>

	* lib/ld-lib.exp (check_lto_available): Support cflags, ldflags and
	test by compiling for an executable rather than shared library.
This commit is contained in:
Yufeng Zhang 2013-12-18 15:16:41 +00:00
parent 720fbed62e
commit 7174e19ff2
2 changed files with 19 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2013-12-18 Vidya Praveen <vidyapraveen@arm.com>
* lib/ld-lib.exp (check_lto_available): Support cflags, ldflags and
test by compiling for an executable rather than shared library.
2013-12-13 Vidya Praveen <vidyapraveen@arm.com>
* lib/ld-lib.exp (default_ld_link): Use ldflags from board description

View File

@ -1644,6 +1644,17 @@ proc check_plugin_api_available { } {
proc check_lto_available { } {
global lto_available_saved
global CC
set flags ""
if [board_info [target_info name] exists cflags] {
append flags " [board_info [target_info name] cflags]"
}
if [board_info [target_info name] exists ldflags] {
append flags " [board_info [target_info name] ldflags]"
}
if {![info exists lto_available_saved]} {
# Check if gcc supports -flto -fuse-linker-plugin
if { [which $CC] == 0 } {
@ -1652,11 +1663,11 @@ proc check_lto_available { } {
}
set basename "lto"
set src ${basename}[pid].c
set output ${basename}[pid].so
set output ${basename}[pid].out
set f [open $src "w"]
puts $f ""
puts $f "int main() { return 0; }"
close $f
set status [remote_exec host $CC "-shared -B[pwd]/tmpdir/ld/ -flto -ffat-lto-objects -fuse-linker-plugin $src -o $output"]
set status [remote_exec host $CC "$flags -B[pwd]/tmpdir/ld/ -flto -ffat-lto-objects -fuse-linker-plugin $src -o $output"]
if { [lindex $status 0] == 0 } {
set lto_available_saved 1
} else {