Handle the new ELF headers in the dependency generation
[nasm.git] / output / outelf.h
blob15373a3b1b36d879b14cd8054e07fb3236a5dbd9
1 /*
2 * Internal definitions common to outelf32 and outelf64
3 */
4 #ifndef OUTPUT_OUTELF_H
5 #define OUTPUT_OUTELF_H
7 #define SYM_GLOBAL 0x10
9 #define GLOBAL_TEMP_BASE 1048576 /* bigger than any reasonable sym id */
11 #define SEG_ALIGN 16 /* alignment of sections in file */
12 #define SEG_ALIGN_1 (SEG_ALIGN-1)
14 /* this stuff is needed for the stabs debugging format */
15 #define N_SO 0x64 /* ID for main source file */
16 #define N_SOL 0x84 /* ID for sub-source file */
17 #define N_BINCL 0x82
18 #define N_EINCL 0xA2
19 #define N_SLINE 0x44
20 #define TY_STABSSYMLIN 0x40 /* ouch */
22 /* this stuff is needed for the dwarf debugging format */
23 #define TY_DEBUGSYMLIN 0x40 /* internal call to debug_out */
25 /* Known sections with nonstandard defaults */
26 struct elf_known_section {
27 const char *name; /* Name of section */
28 int type; /* Section type (SHT_) */
29 uint32_t flags; /* Section flags (SHF_) */
30 uint32_t align; /* Section alignment */
32 extern const struct elf_known_section elf_known_sections[];
34 #endif /* OUTPUT_OUTELF_H */