4 .section ".prefix", "a", @progbits
6 #define LOAD_ADDR 0x10000
11 e_ident: .byte 0x7f, 'E', 'L', 'F', 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0
12 e_type: .short ET_EXEC
13 e_machine: .short EM_386
15 e_entry: .long LOAD_ADDR + _start - elf_header
16 e_phoff: .long elf_program_header - elf_header
19 e_ehsize: .short elf_header_end - elf_header
20 e_phentsize: .short ELF32_PHDR_SIZE
21 e_phnum: .short (elf_program_header_end - elf_program_header)/ELF32_PHDR_SIZE
28 phdr1_p_type: .long PT_NOTE
29 phdr1_p_offset: .long elf_note - elf_header
30 phdr1_p_vaddr: .long elf_note
31 phdr1_p_paddr: .long elf_note
32 phdr1_p_filesz: .long elf_note_end - elf_note
33 phdr1_p_memsz: .long elf_note_end - elf_note
34 phdr1_p_flags: .long PF_R | PF_W | PF_X
35 phdr1_p_align: .long 0
37 /* The decompressor */
38 phdr2_p_type: .long PT_LOAD
39 phdr2_p_offset: .long 0
40 phdr2_p_vaddr: .long elf_header
41 phdr2_p_paddr: .long LOAD_ADDR
42 phdr2_p_filesz: .long _verbatim_size
43 phdr2_p_memsz: .long _image_size
44 phdr2_p_flags: .long PF_R | PF_W | PF_X
45 phdr2_p_align: .long 16
47 elf_program_header_end:
66 .int EIN_PROGRAM_VERSION
78 .int EIN_PROGRAM_CHECKSUM
89 /* Dummy routines to satisfy the build */
90 .section ".text16", "ax", @progbits