# Test Linker map for LLD with ThinLTO, "v1" format.
# .map files actually don't have comments and blank lines! These are added to
# improve documentation, and are stripped by tests.

# First line is needed to identify .map file type.
     VMA      LMA     Size Align Out     In      Symbol
# Extract sizes for every section, and symbols for selected sections only.
# Size-only sections.
     174      174       13     1 .interp
     174      174       13     1         <internal>:(.interp)
     188      188   1e2678     4 .ARM.exidx
     188      188        8     4         obj/third_party/breakpad/libclient.a(client/breakpad_getcontext.o):(.ARM.exidx)
     190      190        8     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(chrono.o):(.ARM.exidx.text.__clang_call_terminate)
     190      190        0     1                 $d
     198      198        8     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(chrono.o):(.ARM.exidx.text._ZNSt6__ndk16chrono12steady_clock3nowEv)
     198      198        0     1                 $d
     1a0      1a0        8     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(exception.o):(.ARM.exidx.text._ZSt18uncaught_exceptionv)
     1a0      1a0        0     1                 $d
    2340     2340        8     4         lto.tmp:(.ARM.exidx.text._ZN5media18CdmPromiseTemplateIJEE26RejectPromiseOnDestructionEv)
    2348     2348        8     4         lto.tmp:(.ARM.exidx.text._ZN5media18CdmPromiseTemplateIJEED2Ev)
  1e2800   1e2800     1870     4 .dynsym
  1e2800   1e2800     1870     4         <internal>:(.dynsym)
  1e4070   1e4070      30e     2 .gnu.version
  1e4070   1e4070      30e     2         <internal>:(.gnu.version)
  1e4380   1e4380       60     4 .gnu.version_r
  1e4380   1e4380       60     4         <internal>:(.gnu.version_r)
  1e43e0   1e43e0       1c     4 .gnu.hash
  1e43e0   1e43e0       1c     4         <internal>:(.gnu.hash)
  1e43fc   1e43fc      f6b     1 .dynstr
  1e43fc   1e43fc      f6b     1         <internal>:(.dynstr)
  1e5368   1e5368    2d1d5     4 .rel.dyn
  1e5368   1e5368    2d1d5     4         <internal>:(.rel.dyn)
  212540   212540      bd8     4 .rel.plt
  212540   212540      bd8     4         <internal>:(.rel.plt)
  213118   213118       1c     4 .note.crashpad.info
  213118   213118       1c     4         obj/third_party/crashpad/crashpad/client/libclient.a(client/crashpad_info_note.o):(.note.crashpad.info)
  213118   213118       1c     1                 CRASHPAD_NOTE
  213124   213124        0     1                 name
  21312d   21312d        0     1                 name_end
  213130   213130        0     1                 desc
  213134   213134        0     1                 desc_end
  213134   213134       98     4 .note.android.ident
  213134   213134       98     4         ../../third_party/android_ndk/platforms/android-16/arch-arm/usr/lib/crtbegin_so.o:(.note.android.ident)
  213134   213134        0     1                 $d
  213134   213134       98     1                 note_android_ident
  213140   213140        0     1                 note_name
  213148   213148        0     1                 note_data
  21314c   21314c        0     1                 ndk_version
  21318c   21318c        0     1                 ndk_build_number
  2131cc   2131cc        0     1                 note_end
  2131cc   2131cc       24     4 .note.gnu.build-id
  2131cc   2131cc       24     4         <internal>:(.note.gnu.build-id)

# .rodata: Extract symbols and size (read-only data).
  213200   213200   611e4b   256 .rodata
  213200   213200        4     1         obj/v8/v8_external_snapshot/embedded.o:(.rodata)
  213200   213200        0     1                 v8_Default_embedded_blob_size_
  213210   213210       20    16         obj/third_party/ffmpeg/libffmpeg_internal.a(ffmpeg_internal/fft_neon.o):(.rodata)
  213210   213210       10     1                 pmmp
  213220   213220       10     1                 mppm
  213230   213230      180     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(hash.o):(.rodata)
  213230   213230       c0     1                 std::__ndk1::(anonymous namespace)::small_primes
  213230   213230        0     1                 $d
  2132f0   2132f0       c0     1                 std::__ndk1::(anonymous namespace)::indices
  2133b0   2133b0       d1    16         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(ios.o):(.rodata)
  2133b0   2133b0        0     1                 $d
  2133b0   2133b0        4     1                 std::__ndk1::ios_base::boolalpha
  2133b4   2133b4        4     1                 std::__ndk1::ios_base::dec
  2133b8   2133b8        4     1                 std::__ndk1::ios_base::fixed
  2133bc   2133bc        4     1                 std::__ndk1::ios_base::hex
  2133c0   2133c0        4     1                 std::__ndk1::ios_base::internal
  2133c4   2133c4        4     1                 std::__ndk1::ios_base::left
  2133c8   2133c8        4     1                 std::__ndk1::ios_base::oct
  2133cc   2133cc        4     1                 std::__ndk1::ios_base::right
  2133d0   2133d0        4     1                 std::__ndk1::ios_base::scientific
  2133d4   2133d4        4     1                 std::__ndk1::ios_base::showbase
  2133d8   2133d8        4     1                 std::__ndk1::ios_base::showpoint
  2133dc   2133dc        4     1                 std::__ndk1::ios_base::showpos
  2133e0   2133e0        4     1                 std::__ndk1::ios_base::skipws
  2133e4   2133e4        4     1                 std::__ndk1::ios_base::unitbuf
  2133e8   2133e8        4     1                 std::__ndk1::ios_base::uppercase
  2133ec   2133ec        4     1                 std::__ndk1::ios_base::adjustfield
  2133f0   2133f0        4     1                 std::__ndk1::ios_base::basefield
  2133f4   2133f4        4     1                 std::__ndk1::ios_base::floatfield
  2133f8   2133f8        4     1                 std::__ndk1::ios_base::badbit
  2133fc   2133fc        4     1                 std::__ndk1::ios_base::eofbit
  213400   213400        4     1                 std::__ndk1::ios_base::failbit
  213404   213404        4     1                 std::__ndk1::ios_base::goodbit
  213408   213408        4     1                 std::__ndk1::ios_base::app
  21340c   21340c        4     1                 std::__ndk1::ios_base::ate
  213410   213410        4     1                 std::__ndk1::ios_base::binary
  213414   213414        4     1                 std::__ndk1::ios_base::in
  213418   213418        4     1                 std::__ndk1::ios_base::out
  21341c   21341c        4     1                 std::__ndk1::ios_base::trunc
  213420   213420       1d     1                 typeinfo name for std::__ndk1::ios_base::failure
  213440   213440       15     1                 typeinfo name for std::__ndk1::ios_base
  213460   213460       21     1                 typeinfo name for std::__ndk1::__iostream_category
  213490   213490       2d    16         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(ios.o):(.rodata._ZTSNSt6__ndk19basic_iosIcNS_11char_traitsIcEEEE)
  213490   213490        0     1                 $d

# <internal>, which is Level 2 only.
  21368b   21368b   2c378e     1         <internal>:(.rodata)
# Single symbol mixed with $d.
  4d6e20   4d6e20       1b    16         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(iostream.o):(.rodata._ZTSNSt6__ndk110__stdinbufIwEE)
  4d6e20   4d6e20        0     1                 $d
  4d6e20   4d6e20       1b     1                 typeinfo name for std::__ndk1::__stdinbuf<wchar_t>

# More <internal>.
  4d7920   4d7920     266c     4         <internal>:(.rodata)
  4d9f90   4d9f90       18    16         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(locale.o):(.rodata._ZTSNSt6__ndk110ctype_baseE)
  4d9f90   4d9f90        0     1                 $d
  4d9f90   4d9f90       18     1                 typeinfo name for std::__ndk1::ctype_base
  4d9fb0   4d9fb0       1a    16         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(locale.o):(.rodata._ZTSNSt6__ndk112codecvt_baseE)
  4d9fb0   4d9fb0        0     1                 $d
  4d9fb0   4d9fb0       1a     1                 typeinfo name for std::__ndk1::codecvt_base
# thinlto-cache at Level 2.
  503eb3   503eb3        1     1         thinlto-cache/Thin-84596a.tmp.o:(.rodata._ZN7network5mojom45CookieManagerProxy_SetCanonicalCookie_Message11kMessageTagE)
  503eb3   503eb3        1     1                 network::mojom::CookieManagerProxy_SetCanonicalCookie_Message::kMessageTag
  503eb4   503eb4        1     1         thinlto-cache/Thin-84596a.tmp.o:(.rodata._ZN7network5mojom48CookieManagerProxy_DeleteCanonicalCookie_Message11kMessageTagE)
  503eb4   503eb4        1     1                 network::mojom::CookieManagerProxy_DeleteCanonicalCookie_Message::kMessageTag

# Size-only sections.
  82504c   82504c     8ffc     4 .ARM.extab
  82504c   82504c       40     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(chrono.o):(.ARM.extab.text._ZNSt6__ndk16chrono12steady_clock3nowEv)
  82504c   82504c        0     1                 $d
  825058   825058        0     1                 GCC_except_table4
  82508c   82508c       38     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(hash.o):(.ARM.extab.text._ZNSt6__ndk112__next_primeEj)
  82508c   82508c        0     1                 $d
  825098   825098        0     1                 GCC_except_table0
  8250c4   8250c4       48     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(ios.o):(.ARM.extab.text._ZNSt6__ndk18ios_base5clearEj)
  8250c4   8250c4        0     1                 $d
  8250d0   8250d0        0     1                 GCC_except_table5

# .text: Extract symbols and size (executable code).
  82f000   82f000  251b7e8    64 .text
# Multiple Level 3 symbols under Level 2. $a annotates ARM symbols (not Thumb2).
# Also, data precede first Level 3 line.
  82f000   82f000      cdc    32         obj/third_party/boringssl/boringssl_asm/chacha-armv4.o:(.text)
  82f004   82f004        0     1                 $d.0
  82f040   82f040        0     1                 $a.1
  82f040   82f040      3f0     1                 ChaCha20_ctr32
  82f440   82f440      89c     1                 ChaCha20_neon
  82fce0   82fce0     130c    32         obj/third_party/boringssl/boringssl_asm/aes-armv4.o:(.text)
  82fce0   82fce0        0     1                 $d.0
  82fce0   82fce0      540     1                 AES_Te
  830220   830220        0     1                 $a.1
  830220   830220       60     1                 aes_nohw_encrypt
  830280   830280      1d8     1                 _armv4_AES_encrypt
  830460   830460        0     1                 _armv4_AES_set_encrypt_key
  830460   830460      2a0     1                 aes_nohw_set_encrypt_key
  830700   830700       20     1                 aes_nohw_set_decrypt_key
  830720   830720        0     1                 _armv4_AES_set_enc2dec_key
  830720   830720      124     1                 AES_set_enc2dec_key
  830860   830860        0     1                 $d.2
  830860   830860      500     1                 AES_Td
  830d60   830d60        0     1                 $a.3
  830d60   830d60       60     1                 aes_nohw_decrypt
  830dc0   830dc0      1f8     1                 _armv4_AES_decrypt
  830fb8   830fb8        0     1                 $d.4

# Many Level 3 annotations. Also, data precede first Level 3 line.
  831000   831000      a28    32         obj/third_party/boringssl/boringssl_asm/aesv8-armx32.o:(.text)
  831004   831004        0     1                 $d.0
  831040   831040        0     1                 $a.1
  831040   831040        0     1                 .Lenc_key
  831040   831040      218     1                 aes_hw_set_encrypt_key
  8310b0   8310b0        0     1                 $d.2
  8310b4   8310b4        0     1                 $a.3
  8310f0   8310f0        0     1                 $d.4
  8310f4   8310f4        0     1                 $a.5
  831124   831124        0     1                 $d.6
  831128   831128        0     1                 $a.7
  831180   831180        0     1                 $d.8
  831184   831184        0     1                 $a.9
  8311f0   8311f0        0     1                 $d.10
  8311f4   8311f4        0     1                 $a.11
  831228   831228        0     1                 $d.12
  83122c   83122c        0     1                 $a.13
  831260   831260       60     1                 aes_hw_set_decrypt_key
  831294   831294        0     1                 $d.14
  83129c   83129c        0     1                 $a.15
  8312b0   8312b0        0     1                 $d.16
  8312b4   8312b4        0     1                 $a.17
  8312c0   8312c0       50     1                 aes_hw_encrypt
  8312d4   8312d4        0     1                 $d.18
  8312dc   8312dc        0     1                 $a.19
  8312e4   8312e4        0     1                 $d.20
  8312ec   8312ec        0     1                 $a.21
  8312f4   8312f4        0     1                 $d.22
  8312fc   8312fc        0     1                 $a.23
  831300   831300        0     1                 $d.24
  831304   831304        0     1                 $a.25
  831320   831320       50     1                 aes_hw_decrypt
  831334   831334        0     1                 $d.26
  83133c   83133c        0     1                 $a.27
  831344   831344        0     1                 $d.28
  83134c   83134c        0     1                 $a.29
  831354   831354        0     1                 $d.30
  83135c   83135c        0     1                 $a.31
  831360   831360        0     1                 $d.32
  831364   831364        0     1                 $a.33
# ... (truncated).

# Symbols with Size = 0 from assembly. Level 3 items are functions.
  83c640   83c640   13aee0    32         obj/v8/v8_external_snapshot/embedded.o:(.text)
  83c640   83c640        0     1                 v8_Default_embedded_blob_data_
  83f4a0   83f4a0        0     1                 Builtins_RecordWrite
  83f7c0   83f7c0        0     1                 Builtins_AdaptorWithExitFrame
  83f800   83f800        0     1                 Builtins_AdaptorWithBuiltinExitFrame
  83f840   83f840        0     1                 Builtins_ArgumentsAdaptorTrampoline
  83f940   83f940        0     1                 Builtins_CallFunction_ReceiverIsNullOrUndefined
  83fa40   83fa40        0     1                 Builtins_CallFunction_ReceiverIsNotNullOrUndefined
  83fb80   83fb80        0     1                 Builtins_CallFunction_ReceiverIsAny
  83fd00   83fd00        0     1                 Builtins_CallBoundFunction
# ... (truncated).

  977520   977520       18    16         obj/third_party/blink/renderer/platform/heap/asm/asm/SaveRegisters_arm.o:(.text)
  977520   977520        0     1                 $a.0
  977520   977520        0     1                 PushAllRegisters

# Symbols with Size = 0 from assembly. Many Level 3 items are labels.
  97c834   97c834      4dc     4         obj/third_party/libvpx/libvpx_assembly_arm.a(libvpx_assembly_arm/vpx_convolve8_avg_horiz_filter_type1_neon.asm.o):(.text)
  97c834   97c834        0     1                 $a.0
  97c834   97c834        0     1                 _vpx_convolve8_avg_horiz_filter_type1_neon
# This is a function.
  97c834   97c834      4dc     1                 vpx_convolve8_avg_horiz_filter_type1_neon
# These are labels.
  97c848   97c848        0     1                 start_loop_count
  97c8d0   97c8d0        0     1                 outer_loop8_residual
  97c8f0   97c8f0        0     1                 outer_loop_8
  97c900   97c900        0     1                 inner_loop_8
  97c9c8   97c9c8        0     1                 end_inner_loop_8
  97c9e4   97c9e4        0     1                 end_loops
  97c9e8   97c9e8        0     1                 outer_loop_16
  97ca54   97ca54        0     1                 inner_loop_16
  97cbcc   97cbcc        0     1                 epilog_16
  97cc08   97cc08        0     1                 end_loops1
  97cc0c   97cc0c        0     1                 outer_loop4_residual
  97cc2c   97cc2c        0     1                 outer_loop_4
  97cc3c   97cc3c        0     1                 inner_loop_4
  97ccf8   97ccf8        0     1                 end_inner_loop_4
  97cd08   97cd08        0     1                 end_func

# Thumb2 symbols (indicated by odd Level 3 addresses) with aliases.
  99cad8   99cad8       fc     8         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libandroid_support.a(e_sinh.o):(.text.sinh)
  99cad8   99cad8        0     1                 $t
  99cad9   99cad9       fc     1                 sinhl
  99cad9   99cad9       fc     1                 sinh
  99cbb8   99cbb8        0     1                 $d

# On rare occasions, some symbol name start with '$'.
 1401788  1401788       a4     4         thinlto-cache/Thin-826b9f.tmp.o:(.text._ZNK4$_21clEP10FamilyDataPKcPS3_)
 1401788  1401788        0     1                 $t.78
 1401789  1401789       a4     1                 $_21::operator()(FamilyData*, char const*, char const**) const
 1401818  1401818        0     1                 $d.79

# Sections prefixed with ".unlikely" or ".hot"
 1401820  1401820       10     4         thinlto-cache/Thin-826b9f.tmp.o:(.text.unlikely.UnlikelyFunc)
 1401820  1401820        0     1                 $t.78
 1401821  1401821       10     1                 UnlikelyFunc
 1401831  1401831       10     1                 UnlikelyFunc2
 1401841  1401841        0     1                 $d.79

# Sections prefixed with ".startup"
 1401850  1401850       10     4         thinlto-cache/Thin-826b9f.tmp.o:(.text.startup)
 1401850  1401850        0     1                 $t.78
 1401851  1401851       10     1                 StartUpFunc
 1401861  1401861        0     1                 $d.79

# Size-only sections.
 2d4a7f0  2d4a7f0     17d0    16 .plt
 2d4a7f0  2d4a7f0     17d0    16         <internal>:(.plt)

# .data: Extract symbols and size.
 2d4c000  2d4c000    1cfc8     8 .data
 2d4c000  2d4c000        4     1         obj/v8/v8_external_snapshot/embedded.o:(.data)
 2d4c000  2d4c000        0     1                 v8_Default_embedded_blob_
 2d4c004  2d4c004        4     4         ../../third_party/android_ndk/platforms/android-16/arch-arm/usr/lib/crtbegin_so.o:(.data)
 2d4c004  2d4c004        0     1                 $d
 2d4c004  2d4c004        4     1                 __dso_handle

# .data.rel.ro: Extract symbols and size.
 2d69000  2d69000   1eb760    16 .data.rel.ro
 2d69000  2d69000       3c     4         obj/third_party/ffmpeg/libffmpeg_internal.a(ffmpeg_internal/fft_vfp.o):(.data.rel.ro)
 2d69000  2d69000       3c     1                 fft_tab_vfp
 2d6903c  2d6903c       3c     4         obj/third_party/ffmpeg/libffmpeg_internal.a(ffmpeg_internal/fft_neon.o):(.data.rel.ro)
 2d6903c  2d6903c       3c     1                 fft_tab_neon
 2d69078  2d69078       40     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(ios.o):(.data.rel.ro._ZTVNSt6__ndk115basic_streambufIwNS_11char_traitsIwEEEE)
 2d69078  2d69078        0     1                 $d
 2d69078  2d69078       40     1                 vtable for std::__ndk1::basic_streambuf<wchar_t, std::__ndk1::char_traits<wchar_t> >
 2d690b8  2d690b8       28     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(ios.o):(.data.rel.ro._ZTVNSt6__ndk113basic_istreamIcNS_11char_traitsIcEEEE)
 2d690b8  2d690b8        0     1                 $d
 2d690b8  2d690b8       28     1                 vtable for std::__ndk1::basic_istream<char, std::__ndk1::char_traits<char> >
 2d690e0  2d690e0       28     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(ios.o):(.data.rel.ro._ZTVNSt6__ndk113basic_istreamIwNS_11char_traitsIwEEEE)
 2d690e0  2d690e0        0     1                 $d
 2d690e0  2d690e0       28     1                 vtable for std::__ndk1::basic_istream<wchar_t, std::__ndk1::char_traits<wchar_t> >
 2d69108  2d69108       28     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(ios.o):(.data.rel.ro._ZTVNSt6__ndk113basic_ostreamIcNS_11char_traitsIcEEEE)
 2d69108  2d69108        0     1                 $d
 2d69108  2d69108       28     1                 vtable for std::__ndk1::basic_ostream<char, std::__ndk1::char_traits<char> >
 2d69130  2d69130       28     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(ios.o):(.data.rel.ro._ZTVNSt6__ndk113basic_ostreamIwNS_11char_traitsIwEEEE)
 2d69130  2d69130        0     1                 $d
 2d69130  2d69130       28     1                 vtable for std::__ndk1::basic_ostream<wchar_t, std::__ndk1::char_traits<wchar_t> >
 2d69158  2d69158       68     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(ios.o):(.data.rel.ro)
 2d69158  2d69158        0     1                 $d
 2d69158  2d69158       24     1                 vtable for std::__ndk1::__iostream_category
 2d6917c  2d6917c       14     1                 vtable for std::__ndk1::ios_base::failure
 2d69190  2d69190       10     1                 vtable for std::__ndk1::ios_base
 2d691a0  2d691a0        c     1                 typeinfo for std::__ndk1::ios_base::failure
 2d691ac  2d691ac        8     1                 typeinfo for std::__ndk1::ios_base
 2d691b4  2d691b4        c     1                 typeinfo for std::__ndk1::__iostream_category

# Size-only sections.
 2f54760  2f54760        8     4 .fini_array
 2f54760  2f54760        4     4         ../../third_party/android_ndk/platforms/android-16/arch-arm/usr/lib/crtbegin_so.o:(.fini_array)
 2f54760  2f54760        0     1                 $d
 2f54764  2f54764        4     1         ../../third_party/android_ndk/platforms/android-16/arch-arm/usr/lib/crtend_so.o:(.fini_array)
 2f54768  2f54768       10     4 .init_array
 2f54768  2f54768        4     4         ../../third_party/android_ndk/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++_static.a(iostream.o):(.init_array)
 2f54768  2f54768        0     1                 $d
 2f5476c  2f5476c        4     4         ../../third_party/gvr-android-sdk/libgvr_shim_static_arm.a(base_logging.o):(.init_array)
 2f54770  2f54770        4     1         ../../third_party/android_ndk/platforms/android-16/arch-arm/usr/lib/crtend_so.o:(.init_array)
 2f54774  2f54774        4     4         thinlto-cache/Thin-b0997c.tmp.o:(.init_array)
 2f54778  2f54778       f0     4 .dynamic
 2f54778  2f54778       f0     4         <internal>:(.dynamic)
 2f54868  2f54868      5ac     4 .got
 2f54868  2f54868      5ac     4         <internal>:(.got)
 2f54e14  2f54e14      5f8     4 .got.plt
 2f54e14  2f54e14      5f8     4         <internal>:(.got.plt)

# .bss: Extract symbols and size (does not consume size on disk).
 2f56000  2f56000   109f7c    32 .bss
 2f56000  2f56000        4     4         thinlto-cache/Thin-cfd493.tmp.o:(COMMON)
 2f56000  2f56000        4     1                 WebRtcSpl_CrossCorrelation
 2f56000  2f56000        4     1                 WebRtcSpl_CrossCorrelation
 2f56000  2f56000        4     1                 WebRtcSpl_CrossCorrelation
 2f56004  2f56004        4     4         thinlto-cache/Thin-cfd493.tmp.o:(COMMON)
 2f56004  2f56004        4     1                 WebRtcSpl_DownsampleFast
 2f56004  2f56004        4     1                 WebRtcSpl_DownsampleFast
 2f56004  2f56004        4     1                 WebRtcSpl_DownsampleFast
 2f56004  2f56004        4     1                 WebRtcSpl_DownsampleFast
 2f56008  2f56008        4     4         thinlto-cache/Thin-cfd493.tmp.o:(COMMON)
 2f56008  2f56008        4     1                 WebRtcSpl_MaxAbsValueW16
 2f56008  2f56008        4     1                 WebRtcSpl_MaxAbsValueW16
 2f56008  2f56008        4     1                 WebRtcSpl_MaxAbsValueW16
 2f56008  2f56008        4     1                 WebRtcSpl_MaxAbsValueW16
 2f56008  2f56008        4     1                 WebRtcSpl_MaxAbsValueW16
 2f56008  2f56008        4     1                 WebRtcSpl_MaxAbsValueW16
 2f56008  2f56008        4     1                 WebRtcSpl_MaxAbsValueW16
 2f56008  2f56008        4     1                 WebRtcSpl_MaxAbsValueW16
 2f56008  2f56008        4     1                 WebRtcSpl_MaxAbsValueW16
 2f56008  2f56008        4     1                 WebRtcSpl_MaxAbsValueW16
 2f56008  2f56008        4     1                 WebRtcSpl_MaxAbsValueW16

# Partitions should be ignored at this point. Otherwise, their .text, .rodata,
# etc. sections will overwrite those of the main partition.
 34be000  34be000       34     1 vr_partition
 34be000  34be000       34     1         <internal>:(vr_partition)
 34be034  34be034      140     1 .phdrs
 34be034  34be034      140     1         <internal>:(.phdrs)
 34be174  34be174       13     1 .interp
 34be174  34be174       13     1         <internal>:(.interp)
 34be188  34be188       1c     4 .note.crashpad.info
 34be188  34be188       1c     4         obj/third_party/crashpad/crashpad/client/libclient.a(client/crashpad_info_note.o):(.note.crashpad.info)
 34be1a4  34be1a4       98     4 .note.android.ident
 34be1a4  34be1a4       98     4         ../../third_party/android_ndk/platforms/android-16/arch-arm/usr/lib/crtbegin_so.o:(.note.android.ident)
 34be23c  34be23c       24     4 .note.gnu.build-id
 34be23c  34be23c       24     4         <internal>:(.note.gnu.build-id)
 34be260  34be260       20     4 .dynsym
 34be260  34be260       20     4         <internal>:(.dynsym)
 34be280  34be280        4     2 .gnu.version
 34be280  34be280        4     2         <internal>:(.gnu.version)
 34be284  34be284       60     4 .gnu.version_r
 34be284  34be284       60     4         <internal>:(.gnu.version_r)
 34be2e4  34be2e4       1c     4 .gnu.hash
 34be2e4  34be2e4       1c     4         <internal>:(.gnu.hash)
 34be300  34be300       6c     1 .dynstr
 34be300  34be300       6c     1         <internal>:(.dynstr)
 34be36c  34be36c      257     4 .rel.dyn
 34be36c  34be36c      257     4         <internal>:(.rel.dyn)
 34be5c4  34be5c4       10     4 .ARM.exidx
 34be5c4  34be5c4       10     4         <internal>:(.ARM.exidx)
 34be5d8  34be5d8     2428     8 .rodata
 34be5d8  34be5d8       10     1         thinlto-cache/Thin-5e976b.tmp.o:(.rodata._ZN2vrL17kRepositionIconIdE)
 34be5d8  34be5d8       10     1                 vr::kRepositionIconId
 34c0a00  34c0a00    2c9ec    16 .text
 34c0a00  34c0a00       18     4         thinlto-cache/Thin-ec84a4.tmp.o:(.text._ZN6SkFont7setSizeEf)
 34c0a00  34c0a00        0     1                 $t.11
 34c0a01  34c0a01       18     1                 SkFont::setSize(float)
 34c0a14  34c0a14        0     1                 $d.12
# .part.end is unique, even if multiple lib*.so, .phdrs, etc. exist.
       0        0     1000     1 .part.end
       0        0     1000     1         <internal>:(.part.end)

# Various .debug sections can exist, but they're omitted for simplicity.

# Size-only sections.
       0        0       23     1 .ARM.attributes
       0        0       23     1         obj/third_party/boringssl/boringssl_asm/chacha-armv4.o:(.ARM.attributes)
       0        0       a8     1 .comment
       0        0       a8     1         <internal>:(.comment)
       0        0  11c3610     4 .symtab
       0        0  11c3610     4         <internal>:(.symtab)
       0        0      1c4     1 .shstrtab
       0        0      1c4     1         <internal>:(.shstrtab)
       0        0  2f73332     1 .strtab
       0        0  2f73332     1         <internal>:(.strtab)

# PROVIDE_HIDDEN are not Level 1 symbols.
 2f73332        0        0     1 PROVIDE_HIDDEN ( linker_script_start_of_text = ADDR ( .text ) )
 2f73332        0        0     1 PROVIDE_HIDDEN ( linker_script_end_of_text = ADDR ( .text ) + SIZEOF ( .text ) )
