* elf/dl-runtime.c: Inlcude <sys/param.h>.
* elf/Makefile (headers): Add bits/link.h.
2005-01-09 Andreas Schwab <schwab@suse.de>
* elf/rtld.c (dl_main): Create main_map with __RTLD_OPENEXEC.
2005-01-09 Andreas Jaeger <aj@suse.de>
* time/strptime_l.c (__strptime_internal): Add braces to avoid
warning.
* sysdeps/x86_64/bits/link.h: Use vector_size for GCC 4.0.
* elf/rtld.c (dl_main): Call _dl_add_to_slotinfo only if USE_TLS.
2005-01-08 Jakub Jelinek <jakub@redhat.com>
* elf/Makefile (generated): Add tst-pie1{,.out,.o}.
2005-01-09 Ulrich Drepper <drepper@redhat.com>
+2005-01-09 Ulrich Drepper <drepper@redhat.com>
+
+ * elf/dl-runtime.c: Inlcude <sys/param.h>.
+
+ * elf/Makefile (headers): Add bits/link.h.
+
+2005-01-09 Andreas Schwab <schwab@suse.de>
+
+ * elf/rtld.c (dl_main): Create main_map with __RTLD_OPENEXEC.
+
+2005-01-09 Andreas Jaeger <aj@suse.de>
+
+ * time/strptime_l.c (__strptime_internal): Add braces to avoid
+ warning.
+
+ * sysdeps/x86_64/bits/link.h: Use vector_size for GCC 4.0.
+
+ * elf/rtld.c (dl_main): Call _dl_add_to_slotinfo only if USE_TLS.
+
+2005-01-08 Jakub Jelinek <jakub@redhat.com>
+
+ * elf/Makefile (generated): Add tst-pie1{,.out,.o}.
+
2005-01-09 Ulrich Drepper <drepper@redhat.com>
* elf/dl-fini.c (_dl_fini): Call destructors of audit DSOs after
subdir := elf
-headers = elf.h bits/elfclass.h link.h
+headers = elf.h bits/elfclass.h link.h bits/link.h
routines = $(dl-routines) dl-support dl-iteratephdr \
dl-addr enbl-secure dl-profstub \
dl-origin dl-libc dl-sym dl-tsd
#include <alloca.h>
#include <stdlib.h>
#include <unistd.h>
+#include <sys/param.h>
#include <ldsodefs.h>
#include "dynamic-link.h"
{
/* Create a link_map for the executable itself.
This will be what dlopen on "" returns. */
- main_map
- = _dl_new_object ((char *) "", "", lt_executable, NULL, 0, LM_ID_BASE);
+ main_map = _dl_new_object ((char *) "", "", lt_executable, NULL,
+ __RTLD_OPENEXEC, LM_ID_BASE);
assert (main_map != NULL);
assert (main_map == GL(dl_ns)[LM_ID_BASE]._ns_loaded);
main_map->l_phdr = phdr;
if (l->l_relro_size)
_dl_protect_relro (l);
+#ifdef USE_TLS
/* Add object to slot information data if necessasy. */
if (l->l_tls_blocksize != 0 && tls_init_tp_called)
_dl_add_to_slotinfo (l);
+#endif
}
_dl_sysdep_start_cleanup ();
_dl_relocate_object (l, l->l_scope, GLRO(dl_lazy),
consider_profiling);
+#ifdef USE_TLS
/* Add object to slot information data if necessasy. */
if (l->l_tls_blocksize != 0 && tls_init_tp_called)
_dl_add_to_slotinfo (l);
+#endif
l = l->l_prev;
}
#else
/* Registers for entry into PLT on x86-64. */
+# if __GNUC_PREREQ (4,0)
+typedef float La_x86_64_xmm __attribute__ ((vector_size (16)));
+# else
typedef float La_x86_64_xmm __attribute__ ((__mode__ (__V4SF__)));
+# endif
+
typedef struct La_x86_64_regs
{
uint64_t lr_rdx;
-/* Copyright (C) 2002, 2004 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
}
#endif
if (!match_string (HERE_AM_STR, rp))
- if (match_string (HERE_PM_STR, rp))
- is_pm = 1;
- else
- return NULL;
- break;
+ {
+ if (match_string (HERE_PM_STR, rp))
+ is_pm = 1;
+ else
+ return NULL;
+ break;
+ }
case 'r':
#ifdef _NL_CURRENT
if (*decided != raw)