MIPS: tools: Add relocs tool
[cascardo/linux.git] / arch / mips / boot / tools / relocs.h
1 #ifndef RELOCS_H
2 #define RELOCS_H
3
4 #include <stdio.h>
5 #include <stdarg.h>
6 #include <stdlib.h>
7 #include <stdint.h>
8 #include <inttypes.h>
9 #include <string.h>
10 #include <errno.h>
11 #include <unistd.h>
12 #include <elf.h>
13 #include <byteswap.h>
14 #define USE_BSD
15 #include <endian.h>
16 #include <regex.h>
17
18 void die(char *fmt, ...);
19
20 /*
21  * Introduced for MIPSr6
22  */
23 #ifndef R_MIPS_PC21_S2
24 #define R_MIPS_PC21_S2          60
25 #endif
26
27 #ifndef R_MIPS_PC26_S2
28 #define R_MIPS_PC26_S2          61
29 #endif
30
31 #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0]))
32
33 enum symtype {
34         S_ABS,
35         S_REL,
36         S_SEG,
37         S_LIN,
38         S_NSYMTYPES
39 };
40
41 void process_32(FILE *fp, int as_text, int as_bin,
42                 int show_reloc_info, int keep_relocs);
43 void process_64(FILE *fp, int as_text, int as_bin,
44                 int show_reloc_info, int keep_relocs);
45 #endif /* RELOCS_H */