Back to index

glibc  2.9
Defines | Functions | Variables
dl-machine.h File Reference
#include <assert.h>
#include <string.h>
#include <link.h>
#include <errno.h>
#include <dl-fptr.h>
#include <tls.h>

Go to the source code of this file.

Defines

#define ELF_MACHINE_NAME   "ia64"
#define DT_IA_64(x)   (DT_IA_64_##x - DT_LOPROC + DT_NUM)
#define ELF_MACHINE_BEFORE_RTLD_RELOC(dynamic_info)   __ia64_init_bootstrap_fdesc_table (&bootstrap_map);
#define ARCH_LA_PLTENTER   ia64_gnu_pltenter
#define ARCH_LA_PLTEXIT   ia64_gnu_pltexit
#define DL_STACK_END(cookie)   ((void *) (((long) (cookie)) - 16))
#define RTLD_START
#define RTLD_START_SPECIAL_INIT   /* nothing */
#define elf_machine_type_class(type)
#define ELF_MACHINE_JMP_SLOT   R_IA64_IPLTLSB
#define ELF_MACHINE_NO_REL   1
#define ELF_MACHINE_START_ADDRESS(map, start)   DL_STATIC_FUNCTION_ADDRESS (map, start)

Functions

static void __attribute__ ((always_inline)) __ia64_init_bootstrap_fdesc_table(struct link_map *map)
static int __attribute__ ((unused)) elf_machine_matches_host(const Elf64_Ehdr *ehdr)
static Elf64_Addr __attribute__ ((unused, const)) elf_machine_dynamic(void)
static int __attribute__ ((unused, always_inline)) elf_machine_runtime_setup(struct link_map *l

Variables

static int int lazy

Define Documentation

#define ARCH_LA_PLTENTER   ia64_gnu_pltenter
#define ARCH_LA_PLTEXIT   ia64_gnu_pltexit
#define DL_STACK_END (   cookie)    ((void *) (((long) (cookie)) - 16))
#define DT_IA_64 (   x)    (DT_IA_64_##x - DT_LOPROC + DT_NUM)

Definition at line 34 of file dl-machine.h.

#define ELF_MACHINE_BEFORE_RTLD_RELOC (   dynamic_info)    __ia64_init_bootstrap_fdesc_table (&bootstrap_map);

Definition at line 48 of file dl-machine.h.

#define ELF_MACHINE_NAME   "ia64"

Definition at line 23 of file dl-machine.h.

#define ELF_MACHINE_NO_REL   1
#define RTLD_START
#define RTLD_START_SPECIAL_INIT   /* nothing */

Function Documentation

static void __attribute__ ( (always_inline)  ) [inline, static]

Definition at line 36 of file dl-machine.h.

{
  Elf64_Addr *boot_table;

  /* careful: this will be called before got has been relocated... */
  asm (";; addl %0 = @gprel (_dl_boot_fptr_table), gp" : "=r"(boot_table));

  map->l_mach.fptr_table_len = ELF_MACHINE_BOOT_FPTR_TABLE_LEN;
  map->l_mach.fptr_table = boot_table;
}
static int __attribute__ ( (unused)  ) const [inline, static]

Definition at line 52 of file dl-machine.h.

{
  return ehdr->e_machine == EM_IA_64;
}
static Elf64_Addr __attribute__ ( (unused, const ) [inline, static]

Definition at line 60 of file dl-machine.h.

{
  Elf64_Addr *p;

  __asm__ (
       ".section .sdata\n"
       "      .type __dynamic_ltv#, @object\n"
       "      .size __dynamic_ltv#, 8\n"
       "__dynamic_ltv:\n"
       "      data8  @ltv(_DYNAMIC#)\n"
       ".previous\n"
       "      addl   %0 = @gprel(__dynamic_ltv#), gp ;;"
       : "=r" (p));

  return *p;
}

Here is the call graph for this function:

static int __attribute__ ( (unused, always_inline)  ) [inline, static]

Variable Documentation

Definition at line 102 of file dl-machine.h.