| /* SPDX-License-Identifier: GPL-2.0 */ |
| #ifndef RELOCS_H |
| #define RELOCS_H |
| |
| #include <stdio.h> |
| #include <stdarg.h> |
| #include <stdlib.h> |
| #include <stdint.h> |
| #include <inttypes.h> |
| #include <string.h> |
| #include <errno.h> |
| #include <unistd.h> |
| #include <elf.h> |
| #include <byteswap.h> |
| #define USE_BSD |
| #include <endian.h> |
| #include <regex.h> |
| |
| void die(char *fmt, ...); |
| |
| /* |
| * Introduced for MIPSr6 |
| */ |
| #ifndef R_MIPS_PC21_S2 |
| #define R_MIPS_PC21_S2 60 |
| #endif |
| |
| #ifndef R_MIPS_PC26_S2 |
| #define R_MIPS_PC26_S2 61 |
| #endif |
| |
| #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) |
| |
| enum symtype { |
| S_ABS, |
| S_REL, |
| S_SEG, |
| S_LIN, |
| S_NSYMTYPES |
| }; |
| |
| void process_32(FILE *fp, int as_text, int as_bin, |
| int show_reloc_info, int keep_relocs); |
| void process_64(FILE *fp, int as_text, int as_bin, |
| int show_reloc_info, int keep_relocs); |
| #endif /* RELOCS_H */ |