This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Build ifunc tests when non-native
- From: Alan Modra <amodra at gmail dot com>
- To: binutils at sourceware dot org
- Date: Mon, 18 Jun 2018 22:12:35 +0930
- Subject: Build ifunc tests when non-native
Plus a number of fixes to the pr23169 tests.
* testsuite/lib/ld-lib.exp (check_ifunc_available): Pass without
running executable when non-native.
(check_ifunc_attribute_available): Likewise.
* testsuite/ld-ifunc/pr23169a.rd: Remove extraneous lines. Match
st_other strings. Pass when func is an ifunc.
* testsuite/ld-ifunc/pr23169b.rd: Remove extraneous lines. Correct
reloc regexp. Correct match-anything line.
* testsuite/ld-ifunc/pr23169c.rd: Remove extraneous lines. Match
st_other strings.
diff --git a/ld/testsuite/ld-ifunc/pr23169a.rd b/ld/testsuite/ld-ifunc/pr23169a.rd
index ca04d8fc38..fcb4feae95 100644
--- a/ld/testsuite/ld-ifunc/pr23169a.rd
+++ b/ld/testsuite/ld-ifunc/pr23169a.rd
@@ -1,6 +1,3 @@
-
-Symbol table '\.dynsym' contains [0-9]+ entries:
- +Num: +Value +Size Type +Bind +Vis +Ndx Name
-#...
- +[0-9]+: +[a-f0-9]+ +0 +FUNC +GLOBAL +DEFAULT +[0-9]+ +func
#...
+ +[0-9]+: +[0-9a-f]+ +[0-9]+ +I?FUNC +GLOBAL +DEFAULT.* [0-9]+ +func
+#pass
diff --git a/ld/testsuite/ld-ifunc/pr23169b.rd b/ld/testsuite/ld-ifunc/pr23169b.rd
index d57a79308b..8f80052c33 100644
--- a/ld/testsuite/ld-ifunc/pr23169b.rd
+++ b/ld/testsuite/ld-ifunc/pr23169b.rd
@@ -1,3 +1,4 @@
#failif
-[a-f0-9]+ +[0-9a-f]+ +R_.*_* +[a-f0-9]+ +func(| \+ 0)
-...
+#...
+[0-9a-f]+ +[0-9a-f]+ +R_[^ ]+ +[0-9a-f]+ +func(| \+ 0)
+#pass
diff --git a/ld/testsuite/ld-ifunc/pr23169c.rd b/ld/testsuite/ld-ifunc/pr23169c.rd
index 1c4ba8ad4a..ad364d4a53 100644
--- a/ld/testsuite/ld-ifunc/pr23169c.rd
+++ b/ld/testsuite/ld-ifunc/pr23169c.rd
@@ -1,6 +1,3 @@
-
-Symbol table '\.dynsym' contains [0-9]+ entries:
- +Num: +Value +Size Type +Bind +Vis +Ndx Name
-#...
- +[0-9]+: +[a-f0-9]+ +[0-9]+ +IFUNC +GLOBAL +DEFAULT +[0-9]+ +func
#...
+ +[0-9]+: +[0-9a-f]+ +[0-9]+ +IFUNC +GLOBAL +DEFAULT.* [0-9]+ +func
+#pass
diff --git a/ld/testsuite/lib/ld-lib.exp b/ld/testsuite/lib/ld-lib.exp
index 41689333a6..cfbefe9028 100644
--- a/ld/testsuite/lib/ld-lib.exp
+++ b/ld/testsuite/lib/ld-lib.exp
@@ -2137,7 +2137,7 @@ proc check_ifunc_available { } {
set src [remote_download host $src]
}
set ifunc_available_saved [run_host_cmd_yesno "$CC" "$flags $src -o $output"]
- if { $ifunc_available_saved == 1 } {
+ if { [isnative] && $ifunc_available_saved == 1 } {
set ifunc_available_saved [run_host_cmd_yesno "$output" ""]
}
remote_file host delete $src
@@ -2184,7 +2184,7 @@ proc check_ifunc_attribute_available { } {
set src [remote_download host $src]
}
set ifunc_attribute_available_saved [run_host_cmd_yesno "$CC" "$flags $src -o $output"]
- if { $ifunc_attribute_available_saved == 1 } {
+ if { [isnative] && $ifunc_attribute_available_saved == 1 } {
set ifunc_attribute_available_saved [run_host_cmd_yesno "$output" ""]
}
remote_file host delete $src
--
Alan Modra
Australia Development Lab, IBM