~ubuntu-branches/ubuntu/precise/eglibc/precise-201308281639

« back to all changes in this revision

Viewing changes to sysdeps/x86_64/dl-irel.h

  • Committer: Package Import Robot
  • Author(s): Matthias Klose
  • Date: 2012-02-08 01:58:09 UTC
  • mfrom: (1.5.3) (288.1.12 precise)
  • Revision ID: package-import@ubuntu.com-20120208015809-ulscst7uteq3e22z
Tags: 2.15~pre6-0ubuntu10
Merge from Debian (r5151, 2.13-26).

Show diffs side-by-side

added added

removed removed

Lines of Context:
26
26
 
27
27
#define ELF_MACHINE_IRELA       1
28
28
 
 
29
static inline Elf64_Addr
 
30
__attribute ((always_inline))
 
31
elf_ifunc_invoke (Elf64_Addr addr)
 
32
{
 
33
  return ((Elf64_Addr (*) (void)) (addr)) ();
 
34
}
 
35
 
29
36
static inline void
30
37
__attribute ((always_inline))
31
38
elf_irela (const Elf64_Rela *reloc)
35
42
 
36
43
  if (__builtin_expect (r_type == R_X86_64_IRELATIVE, 1))
37
44
    {
38
 
      Elf64_Addr value = ((Elf64_Addr (*) (void)) reloc->r_addend) ();
 
45
      Elf64_Addr value = elf_ifunc_invoke(reloc->r_addend);
39
46
      *reloc_addr = value;
40
47
    }
41
48
  else