about summary refs log tree commit diff
path: root/elf/nextmod1.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-10-03 07:37:02 +0000
committerUlrich Drepper <drepper@redhat.com>2000-10-03 07:37:02 +0000
commite6ea9c0dd02360ae6605ac81efd2bf642f276c8d (patch)
treeea2e8ea34eeff417a21b5388cb9e33bd17978777 /elf/nextmod1.c
parentdc4b147e522fbabddf94286663d5ec13d12b2dab (diff)
downloadglibc-e6ea9c0dd02360ae6605ac81efd2bf642f276c8d.tar.gz
glibc-e6ea9c0dd02360ae6605ac81efd2bf642f276c8d.tar.xz
glibc-e6ea9c0dd02360ae6605ac81efd2bf642f276c8d.zip
Update.
2000-10-02  Jakub Jelinek  <jakub@redhat.com>

	* elf/nextmod1.c (failing_rtld_next_use): Ensure it is not tail call
	optimized.

	* sysdeps/sparc/sparc32/fpu/libm-test-ulps: New file.
Diffstat (limited to 'elf/nextmod1.c')
-rw-r--r--elf/nextmod1.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/elf/nextmod1.c b/elf/nextmod1.c
index 3549c75174..19f972b9e0 100644
--- a/elf/nextmod1.c
+++ b/elf/nextmod1.c
@@ -1,5 +1,7 @@
 #include <dlfcn.h>
 
+int nextmod1_dummy_var;
+
 int
 successful_rtld_next_test (void)
 {
@@ -16,5 +18,10 @@ successful_rtld_next_test (void)
 void *
 failing_rtld_next_use (void)
 {
-  return dlsym (RTLD_NEXT, __FUNCTION__);
+  void *ret = dlsym (RTLD_NEXT, __FUNCTION__);
+
+  /* Ensure we are not tail call optimized, because then RTLD_NEXT
+     might return this function.  */
+  ++nextmod1_dummy_var;
+  return ret;
 }