summaryrefslogtreecommitdiff
path: root/elf
diff options
context:
space:
mode:
Diffstat (limited to 'elf')
-rw-r--r--elf/Versions2
-rw-r--r--elf/dl-error.c3
-rw-r--r--elf/dl-load.c4
-rw-r--r--elf/ldsodefs.h2
-rw-r--r--elf/rtld.c2
5 files changed, 9 insertions, 4 deletions
diff --git a/elf/Versions b/elf/Versions
index 2c93632a2b..1cfb5ccf2c 100644
--- a/elf/Versions
+++ b/elf/Versions
@@ -19,7 +19,7 @@ libc {
GLIBC_2.1 {
# global variables
_dl_profile; _dl_profile_map; _dl_profile_output; _dl_start_profile;
- _dl_loaded; _dl_main_searchlist; __fpu_control;
+ _dl_loaded; _dl_main_searchlist; _dl_fpu_control;
# functions used in other libraries
_dl_mcount; _dl_mcount_wrapper; _dl_mcount_wrapper_check; _dl_unload_cache;
diff --git a/elf/dl-error.c b/elf/dl-error.c
index 228c1a80a1..ae63447453 100644
--- a/elf/dl-error.c
+++ b/elf/dl-error.c
@@ -145,7 +145,8 @@ _dl_catch_error (char **errstring,
void *args)
{
int errcode;
- struct catch *old, c;
+ struct catch *volatile old;
+ struct catch c;
/* We need not handle `receiver' since setting a `catch' is handled
before it. */
diff --git a/elf/dl-load.c b/elf/dl-load.c
index cb0a4ff753..3e5e291018 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
@@ -456,10 +456,12 @@ _dl_init_paths (const char *llp)
const char **strp;
struct r_search_path_elem *pelem, **aelem;
size_t round_size;
+#ifdef PIC
+ struct link_map *l;
+#endif
/* Fill in the information about the application's RPATH and the
directories addressed by the LD_LIBRARY_PATH environment variable. */
- struct link_map *l;
/* Get the capabilities. */
capstr = _dl_important_hwcaps (_dl_platform, _dl_platformlen,
diff --git a/elf/ldsodefs.h b/elf/ldsodefs.h
index 807613e4b4..946cf34439 100644
--- a/elf/ldsodefs.h
+++ b/elf/ldsodefs.h
@@ -148,7 +148,7 @@ extern unsigned long int _dl_hwcap;
/* Mask for important hardware capabilities we honour. */
extern unsigned long int _dl_hwcap_mask;
-/* File deccriptor to write debug messages to. */
+/* File descriptor to write debug messages to. */
extern int _dl_debug_fd;
/* Names of shared object for which the RPATH should be ignored. */
diff --git a/elf/rtld.c b/elf/rtld.c
index 7c2e054d88..4d67176d03 100644
--- a/elf/rtld.c
+++ b/elf/rtld.c
@@ -25,6 +25,7 @@
#include <elf/ldsodefs.h>
#include <stdio-common/_itoa.h>
#include <entry.h>
+#include <fpu_control.h>
#include "dynamic-link.h"
#include "dl-librecon.h"
@@ -73,6 +74,7 @@ int _dl_verbose;
const char *_dl_platform;
size_t _dl_platformlen;
unsigned long _dl_hwcap;
+fpu_control_t _dl_fpu_control = _FPU_DEFAULT;
struct r_search_path *_dl_search_paths;
const char *_dl_profile;
const char *_dl_profile_output;