diff options
Diffstat (limited to 'include/elf.h')
-rw-r--r-- | include/elf.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/elf.h b/include/elf.h index 14ed67f..1424982 100644 --- a/include/elf.h +++ b/include/elf.h @@ -15,6 +15,19 @@ # define ELF_NOTE_NEXT_OFFSET(namesz, descsz, align) \ ALIGN_UP (ELF_NOTE_DESC_OFFSET ((namesz), (align)) + (descsz), (align)) +# ifdef HIDDEN_VAR_NEEDS_DYNAMIC_RELOC +# define DL_ADDRESS_WITHOUT_RELOC(expr) (expr) +# else +/* Evaluate EXPR without run-time relocation for it. EXPR should be an + array, an address of an object, or a string literal. */ +# define DL_ADDRESS_WITHOUT_RELOC(expr) \ + ({ \ + __auto_type _result = (expr); \ + asm ("" : "+r" (_result)); \ + _result; \ + }) +# endif + /* Some information which is not meant for the public and therefore not in <elf.h>. */ # include <dl-dtprocnum.h> |