
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/arm64/entry.o
LOAD purgatory/arch/arm64/purgatory-arm64.o
LOAD purgatory/sha256.o

.interp
 *(.interp)

.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.ifunc
 *(.rela.ifunc)

.rela.plt
 *(.rela.plt)

.init
 *(SORT_NONE(.init))

.plt
 *(.plt)

.text           0x0000000000000000     0x3060
 *(.text .stub)
 .text          0x0000000000000000      0x178 purgatory/purgatory.o
                0x0000000000000000                verify_sha256_digest
                0x0000000000000128                purgatory
 .text          0x0000000000000178      0x474 purgatory/printf.o
                0x0000000000000178                vsprintf
                0x0000000000000508                sprintf
                0x0000000000000574                printf
 .text          0x00000000000005ec       0x94 purgatory/string.o
                0x00000000000005ec                strnlen
                0x0000000000000610                memset
                0x000000000000062c                memcpy
                0x000000000000064c                memcmp
 .text          0x0000000000000680      0x830 purgatory/arch/arm64/entry.o
                0x0000000000000680                purgatory_start
 .text          0x0000000000000eb0       0xb0 purgatory/arch/arm64/purgatory-arm64.o
                0x0000000000000eb0                putchar
                0x0000000000000ee8                post_verification_setup_arch
                0x0000000000000f00                setup_arch
 .text          0x0000000000000f60     0x2100 purgatory/sha256.o
                0x0000000000000f60                sha256_starts
                0x0000000000000fb0                sha256_process
                0x0000000000002eb0                sha256_update
                0x0000000000002ec0                sha256_finish
 *(.gnu.warning)

.fini
 *(SORT_NONE(.fini))

.rodata
 *(.rodata)

.rodata.str1.1  0x0000000000000000       0xb4
 .rodata.str1.1
                0x0000000000000000       0x5a purgatory/purgatory.o
 .rodata.str1.1
                0x000000000000005a       0x11 purgatory/printf.o
 .rodata.str1.1
                0x000000000000006b       0x49 purgatory/arch/arm64/purgatory-arm64.o

.rodata1
 *(.rodata1)

.eh_frame_hdr
 *(.eh_frame_hdr)

.eh_frame       0x0000000000000000      0x2a8
 *(.eh_frame)
 .eh_frame      0x0000000000000000       0x60 purgatory/purgatory.o
 .eh_frame      0x0000000000000060       0x98 purgatory/printf.o
 .eh_frame      0x00000000000000f8       0x68 purgatory/string.o
 .eh_frame      0x0000000000000160       0x60 purgatory/arch/arm64/purgatory-arm64.o
 .eh_frame      0x00000000000001c0       0xe8 purgatory/sha256.o

.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      0x178
 *(.data)
 .data          0x0000000000000000      0x124 purgatory/purgatory.o
                0x0000000000000000                sha256_regions
                0x0000000000000100                sha256_digest
                0x0000000000000120                skip_checks
 .data          0x0000000000000124        0x0 purgatory/printf.o
 .data          0x0000000000000124        0x0 purgatory/string.o
 *fill*         0x0000000000000124        0x4 
 .data          0x0000000000000128       0x10 purgatory/arch/arm64/entry.o
                0x0000000000000128                arm64_kernel_entry
                0x0000000000000130                arm64_dtb_addr
 .data          0x0000000000000138        0x0 purgatory/arch/arm64/purgatory-arm64.o
 .data          0x0000000000000138       0x40 purgatory/sha256.o

data            0x0000000000000000        0x8
 data           0x0000000000000000        0x8 purgatory/arch/arm64/purgatory-arm64.o
                0x0000000000000000                arm64_sink

.data1
 *(.data1)

.bss            0x0000000000000000        0x0
 *(.bss)
 .bss           0x0000000000000000        0x0 purgatory/purgatory.o
 .bss           0x0000000000000000        0x0 purgatory/printf.o
 .bss           0x0000000000000000        0x0 purgatory/string.o
 .bss           0x0000000000000000        0x0 purgatory/arch/arm64/entry.o
 .bss           0x0000000000000000        0x0 purgatory/arch/arm64/purgatory-arm64.o
 .bss           0x0000000000000000        0x0 purgatory/sha256.o

.stab
 *(.stab)

.stabstr
 *(.stabstr)

.stab.excl
 *(.stab.excl)

.stab.exclstr
 *(.stab.exclstr)

.stab.index
 *(.stab.index)

.stab.indexstr
 *(.stab.indexstr)

.comment        0x0000000000000000       0x8c
 *(.comment)
 .comment       0x0000000000000000       0x1c purgatory/purgatory.o
 .comment       0x000000000000001c       0x1c purgatory/printf.o
 .comment       0x0000000000000038       0x1c purgatory/string.o
 .comment       0x0000000000000054       0x1c purgatory/arch/arm64/purgatory-arm64.o
 .comment       0x0000000000000070       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/arm64/purgatory-arm64.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)

.ARM.attributes
 *(.ARM.attributes)
 *(.gnu.attributes)

.note.gnu.arm.ident
 *(.note.gnu.arm.ident)
OUTPUT(purgatory/purgatory.ro.sym elf64-littleaarch64)
LOAD linker stubs
