Merging program properties Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x1) and purgatory/printf.o (0x9) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x0) and purgatory/printf.o (0x1) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/string.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/string.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/arch/x86_64/entry64-32.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/arch/x86_64/entry64-32.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/arch/x86_64/entry64.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/arch/x86_64/entry64.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/arch/x86_64/setup-x86_64.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/arch/x86_64/setup-x86_64.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/arch/x86_64/stack.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/arch/x86_64/stack.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/arch/x86_64/purgatory-x86_64.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/arch/x86_64/purgatory-x86_64.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/arch/i386/entry32-16.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/arch/i386/entry32-16.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/arch/i386/entry32-16-debug.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/arch/i386/entry32-16-debug.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/arch/i386/crashdump_backup.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/arch/i386/crashdump_backup.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/arch/i386/console-x86.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/arch/i386/console-x86.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/arch/i386/vga.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/arch/i386/vga.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/arch/i386/pic.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/arch/i386/pic.o (0x0) Updated property 0xc0010001 (0x9) to merge purgatory/purgatory.o (0x9) and purgatory/sha256.o (0x1) Updated property 0xc0010002 (0x1) to merge purgatory/purgatory.o (0x1) and purgatory/sha256.o (0x0) Discarded input sections .note.gnu.property 0x0000000000000000 0x30 purgatory/printf.o .note.gnu.property 0x0000000000000000 0x30 purgatory/string.o .note.gnu.property 0x0000000000000000 0x30 purgatory/arch/x86_64/entry64-32.o .note.gnu.property 0x0000000000000000 0x30 purgatory/arch/x86_64/entry64.o .note.gnu.property 0x0000000000000000 0x30 purgatory/arch/x86_64/setup-x86_64.o .note.gnu.property 0x0000000000000000 0x30 purgatory/arch/x86_64/stack.o .note.gnu.property 0x0000000000000000 0x30 purgatory/arch/x86_64/purgatory-x86_64.o .note.gnu.property 0x0000000000000000 0x30 purgatory/arch/i386/entry32-16.o .note.gnu.property 0x0000000000000000 0x30 purgatory/arch/i386/entry32-16-debug.o .note.gnu.property 0x0000000000000000 0x30 purgatory/arch/i386/crashdump_backup.o .note.gnu.property 0x0000000000000000 0x30 purgatory/arch/i386/console-x86.o .note.gnu.property 0x0000000000000000 0x30 purgatory/arch/i386/vga.o .note.gnu.property 0x0000000000000000 0x30 purgatory/arch/i386/pic.o .note.gnu.property 0x0000000000000000 0x30 purgatory/sha256.o Memory Configuration Name Origin Length Attributes *default* 0x0000000000000000 0xffffffffffffffff Linker script and memory map LOAD purgatory/purgatory.o LOAD purgatory/printf.o LOAD purgatory/string.o LOAD purgatory/arch/x86_64/entry64-32.o LOAD purgatory/arch/x86_64/entry64.o LOAD purgatory/arch/x86_64/setup-x86_64.o LOAD purgatory/arch/x86_64/stack.o LOAD purgatory/arch/x86_64/purgatory-x86_64.o LOAD purgatory/arch/i386/entry32-16.o LOAD purgatory/arch/i386/entry32-16-debug.o LOAD purgatory/arch/i386/crashdump_backup.o LOAD purgatory/arch/i386/console-x86.o LOAD purgatory/arch/i386/vga.o LOAD purgatory/arch/i386/pic.o LOAD purgatory/sha256.o .interp *(.interp) .note.gnu.property 0x0000000000000000 0x30 .note.gnu.property 0x0000000000000000 0x30 purgatory/purgatory.o .note.gnu.build-id *(.note.gnu.build-id) .hash *(.hash) .gnu.hash *(.gnu.hash) .dynsym *(.dynsym) .dynstr *(.dynstr) .gnu.version *(.gnu.version) .gnu.version_d *(.gnu.version_d) .gnu.version_r *(.gnu.version_r) .rela.init *(.rela.init) .rela.text *(.rela.text) .rela.fini *(.rela.fini) .rela.rodata *(.rela.rodata) .rela.data.rel.ro *(.rela.data.rel.ro) .rela.data *(.rela.data) .rela.tdata *(.rela.tdata) .rela.tbss *(.rela.tbss) .rela.ctors *(.rela.ctors) .rela.dtors *(.rela.dtors) .rela.got *(.rela.got) .rela.bss *(.rela.bss) .rela.ldata *(.rela.ldata) .rela.lbss *(.rela.lbss) .rela.lrodata *(.rela.lrodata) .rela.ifunc *(.rela.ifunc) .rela.plt *(.rela.plt) .init *(SORT_NONE(.init)) .plt *(.plt) .plt.got *(.plt.got) .plt.sec *(.plt.sec) .text 0x0000000000000000 0x3d3c *(.text .stub) .text 0x0000000000000000 0x17d purgatory/purgatory.o 0x0000000000000000 verify_sha256_digest 0x000000000000012a purgatory .text 0x000000000000017d 0x3da purgatory/printf.o 0x000000000000017d vsprintf 0x000000000000041e sprintf 0x00000000000004b4 printf .text 0x0000000000000557 0x60 purgatory/string.o 0x0000000000000557 strnlen 0x000000000000056a memset 0x000000000000057e memcpy 0x0000000000000596 memcmp *fill* 0x00000000000005b7 0x9 .text 0x00000000000005c0 0xc5 purgatory/arch/x86_64/entry64-32.o 0x00000000000005c0 entry32 *fill* 0x0000000000000685 0xb .text 0x0000000000000690 0x9f purgatory/arch/x86_64/entry64.o 0x0000000000000690 entry64 *fill* 0x000000000000072f 0x1 .text 0x0000000000000730 0x32 purgatory/arch/x86_64/setup-x86_64.o 0x0000000000000730 purgatory_start .text 0x0000000000000762 0x0 purgatory/arch/x86_64/stack.o .text 0x0000000000000762 0xe6 purgatory/arch/x86_64/purgatory-x86_64.o 0x0000000000000762 setup_arch 0x00000000000007b8 x86_setup_jump_back_entry 0x00000000000007f0 post_verification_setup_arch *fill* 0x0000000000000848 0x8 .text 0x0000000000000850 0x104 purgatory/arch/i386/entry32-16.o 0x0000000000000850 entry16 0x000000000000091c entry16_regs *fill* 0x0000000000000954 0xc .text 0x0000000000000960 0x353 purgatory/arch/i386/entry32-16-debug.o 0x0000000000000960 entry16_debug 0x0000000000000bf4 entry16_debug_regs 0x0000000000000c34 entry16_debug_pre32 0x0000000000000c70 entry16_debug_first32 0x0000000000000cad entry16_debug_old_first32 .text 0x0000000000000cb3 0x3e purgatory/arch/i386/crashdump_backup.o 0x0000000000000cb3 crashdump_backup_memory .text 0x0000000000000cf1 0x1ba purgatory/arch/i386/console-x86.o 0x0000000000000d8e putchar .text 0x0000000000000eab 0x232 purgatory/arch/i386/vga.o 0x0000000000000eab x86_reset_vga .text 0x00000000000010dd 0x35 purgatory/arch/i386/pic.o 0x00000000000010dd x86_setup_legacy_pic *fill* 0x0000000000001112 0xe .text 0x0000000000001120 0x2c1c purgatory/sha256.o 0x0000000000001120 sha256_starts 0x0000000000001170 sha256_process 0x0000000000003bc0 sha256_update 0x0000000000003be0 sha256_finish *(.gnu.warning) .fini *(SORT_NONE(.fini)) .rodata 0x0000000000000000 0x110 *(.rodata) .rodata 0x0000000000000000 0x30 purgatory/arch/x86_64/entry64-32.o 0x0000000000000008 entry32_regs .rodata 0x0000000000000030 0xc0 purgatory/arch/x86_64/entry64.o 0x0000000000000030 entry64_regs .rodata 0x00000000000000f0 0x20 purgatory/arch/x86_64/setup-x86_64.o .rodata.str1.1 0x0000000000000000 0x88 .rodata.str1.1 0x0000000000000000 0x5a purgatory/purgatory.o .rodata.str1.1 0x000000000000005a 0x11 purgatory/printf.o .rodata.str1.1 0x000000000000006b 0x1d purgatory/arch/x86_64/purgatory-x86_64.o .rodata1 *(.rodata1) .eh_frame_hdr *(.eh_frame_hdr) .eh_frame 0x0000000000000000 0x3e4 *(.eh_frame) .eh_frame 0x0000000000000000 0x78 purgatory/purgatory.o .eh_frame 0x0000000000000078 0xa0 purgatory/printf.o .eh_frame 0x0000000000000118 0x68 purgatory/string.o .eh_frame 0x0000000000000180 0x70 purgatory/arch/x86_64/purgatory-x86_64.o .eh_frame 0x00000000000001f0 0x30 purgatory/arch/i386/crashdump_backup.o .eh_frame 0x0000000000000220 0x48 purgatory/arch/i386/console-x86.o .eh_frame 0x0000000000000268 0x30 purgatory/arch/i386/vga.o .eh_frame 0x0000000000000298 0x30 purgatory/arch/i386/pic.o .eh_frame 0x00000000000002c8 0x11c purgatory/sha256.o 0x120 (size before relaxing) .gcc_except_table *(.gcc_except_table) .gnu_extab *(.gnu_extab*) .exception_ranges *(.exception_ranges) .eh_frame *(.eh_frame) .gnu_extab *(.gnu_extab) .gcc_except_table *(.gcc_except_table) .exception_ranges *(.exception_ranges) .tdata *(.tdata) .tbss *(.tbss) .jcr *(.jcr) .dynamic *(.dynamic) .got *(.got) .got.plt *(.got.plt) .data 0x0000000000000000 0x20e0 *(.data) .data 0x0000000000000000 0x140 purgatory/purgatory.o 0x0000000000000000 skip_checks 0x0000000000000020 sha256_digest 0x0000000000000040 sha256_regions .data 0x0000000000000140 0x0 purgatory/printf.o .data 0x0000000000000140 0x0 purgatory/string.o .data 0x0000000000000140 0x78 purgatory/arch/x86_64/entry64-32.o .data 0x00000000000001b8 0x0 purgatory/arch/x86_64/entry64.o .data 0x00000000000001b8 0x0 purgatory/arch/x86_64/setup-x86_64.o *fill* 0x00000000000001b8 0xe48 .data 0x0000000000001000 0x1000 purgatory/arch/x86_64/stack.o 0x0000000000001000 stack 0x0000000000001fe0 stack_arg64_4 0x0000000000001fe0 stack_arg32_8 0x0000000000001fe4 stack_arg32_7 0x0000000000001fe8 stack_arg64_3 0x0000000000001fe8 stack_arg32_6 0x0000000000001fec stack_arg32_5 0x0000000000001ff0 stack_arg64_2 0x0000000000001ff0 stack_arg32_4 0x0000000000001ff4 stack_arg32_3 0x0000000000001ff8 stack_arg64_1 0x0000000000001ff8 stack_arg32_2 0x0000000000001ffc stack_arg32_1 0x0000000000002000 stack_end .data 0x0000000000002000 0x13 purgatory/arch/x86_64/purgatory-x86_64.o 0x0000000000002000 cmdline_end 0x0000000000002008 jump_back_entry 0x0000000000002010 panic_kernel 0x0000000000002011 legacy_pic 0x0000000000002012 reset_vga *fill* 0x0000000000002013 0xd .data 0x0000000000002020 0x28 purgatory/arch/i386/entry32-16.o *fill* 0x0000000000002048 0x8 .data 0x0000000000002050 0x1e purgatory/arch/i386/entry32-16-debug.o *fill* 0x000000000000206e 0x2 .data 0x0000000000002070 0x18 purgatory/arch/i386/crashdump_backup.o 0x0000000000002070 backup_src_size 0x0000000000002078 backup_src_start 0x0000000000002080 backup_start .data 0x0000000000002088 0x14 purgatory/arch/i386/console-x86.o 0x000000000000208c serial_baud 0x0000000000002090 serial_base 0x0000000000002092 console_serial 0x0000000000002093 console_vga .data 0x000000000000209c 0x0 purgatory/arch/i386/vga.o .data 0x000000000000209c 0x0 purgatory/arch/i386/pic.o *fill* 0x000000000000209c 0x4 .data 0x00000000000020a0 0x40 purgatory/sha256.o .data1 *(.data1) .bss 0x0000000000000000 0x1000 *(.bss) .bss 0x0000000000000000 0x0 purgatory/purgatory.o .bss 0x0000000000000000 0x0 purgatory/printf.o .bss 0x0000000000000000 0x0 purgatory/string.o .bss 0x0000000000000000 0x0 purgatory/arch/x86_64/entry64-32.o .bss 0x0000000000000000 0x0 purgatory/arch/x86_64/entry64.o .bss 0x0000000000000000 0x1000 purgatory/arch/x86_64/setup-x86_64.o .bss 0x0000000000001000 0x0 purgatory/arch/x86_64/stack.o .bss 0x0000000000001000 0x0 purgatory/arch/x86_64/purgatory-x86_64.o .bss 0x0000000000001000 0x0 purgatory/arch/i386/entry32-16.o .bss 0x0000000000001000 0x0 purgatory/arch/i386/entry32-16-debug.o .bss 0x0000000000001000 0x0 purgatory/arch/i386/crashdump_backup.o .bss 0x0000000000001000 0x0 purgatory/arch/i386/console-x86.o .bss 0x0000000000001000 0x0 purgatory/arch/i386/vga.o .bss 0x0000000000001000 0x0 purgatory/arch/i386/pic.o .bss 0x0000000000001000 0x0 purgatory/sha256.o .lbss *(.lbss) .lrodata *(.lrodata) .ldata *(.ldata) .stab *(.stab) .stabstr *(.stabstr) .stab.excl *(.stab.excl) .stab.exclstr *(.stab.exclstr) .stab.index *(.stab.index) .stab.indexstr *(.stab.indexstr) .comment 0x0000000000000000 0xfc *(.comment) .comment 0x0000000000000000 0x1c purgatory/purgatory.o .comment 0x000000000000001c 0x1c purgatory/printf.o .comment 0x0000000000000038 0x1c purgatory/string.o .comment 0x0000000000000054 0x1c purgatory/arch/x86_64/purgatory-x86_64.o .comment 0x0000000000000070 0x1c purgatory/arch/i386/crashdump_backup.o .comment 0x000000000000008c 0x1c purgatory/arch/i386/console-x86.o .comment 0x00000000000000a8 0x1c purgatory/arch/i386/vga.o .comment 0x00000000000000c4 0x1c purgatory/arch/i386/pic.o .comment 0x00000000000000e0 0x1c purgatory/sha256.o .note.GNU-stack 0x0000000000000000 0x0 .note.GNU-stack 0x0000000000000000 0x0 purgatory/purgatory.o .note.GNU-stack 0x0000000000000000 0x0 purgatory/printf.o .note.GNU-stack 0x0000000000000000 0x0 purgatory/string.o .note.GNU-stack 0x0000000000000000 0x0 purgatory/arch/x86_64/purgatory-x86_64.o .note.GNU-stack 0x0000000000000000 0x0 purgatory/arch/i386/crashdump_backup.o .note.GNU-stack 0x0000000000000000 0x0 purgatory/arch/i386/console-x86.o .note.GNU-stack 0x0000000000000000 0x0 purgatory/arch/i386/vga.o .note.GNU-stack 0x0000000000000000 0x0 purgatory/arch/i386/pic.o .note.GNU-stack 0x0000000000000000 0x0 purgatory/sha256.o .gnu.build.attributes *(.gnu.build.attributes) .debug *(.debug) .line *(.line) .debug_srcinfo *(.debug_srcinfo) .debug_sfnames *(.debug_sfnames) .debug_aranges *(.debug_aranges) .debug_pubnames *(.debug_pubnames) .debug_info *(.debug_info) .debug_abbrev *(.debug_abbrev) .debug_line *(.debug_line) .debug_frame *(.debug_frame) .debug_str *(.debug_str) .debug_loc *(.debug_loc) .debug_macinfo *(.debug_macinfo) .debug_weaknames *(.debug_weaknames) .debug_funcnames *(.debug_funcnames) .debug_typenames *(.debug_typenames) .debug_varnames *(.debug_varnames) .debug_pubtypes *(.debug_pubtypes) .debug_ranges *(.debug_ranges) .debug_addr *(.debug_addr) .debug_line_str *(.debug_line_str) .debug_loclists *(.debug_loclists) .debug_macro *(.debug_macro) .debug_names *(.debug_names) .debug_rnglists *(.debug_rnglists) .debug_str_offsets *(.debug_str_offsets) .debug_sup *(.debug_sup) .gnu.attributes *(.gnu.attributes) OUTPUT(purgatory/purgatory.ro.sym elf64-x86-64)