gcc_except_tab-got-arm64.yaml 2.08 KB
# RUN: ld64.lld -arch arm64 %s \
# RUN: -dylib %p/Inputs/arm64/libSystem.yaml -o %t
# RUN: llvm-objdump --section-headers %t | FileCheck %s

# Make sure that the GOT relocation from gcc_except_tab to the data
# is not removed.

--- !native
defined-atoms:
  - name:            _main
    scope:           global
    content:         [ FD, 7B, BF, A9, FD, 03, 00, 91, FF, 43, 00, D1,
                       BF, C3, 1F, B8, 00, 00, 00, 94, BF, 03, 00, 91,
                       FD, 7B, C1, A8, C0, 03, 5F, D6 ]
    alignment:       4
  - name:            __ZTSP1A
    scope:           hidden
    type:            constant
    content:         [ 50, 31, 41, 00 ]
    merge:           as-weak
  - name:            GCC_except_table0
    type:            unwind-lsda
    content:         [ FF, 9B, E7, 80, 00, 03, 5B, 00, 00, 00, 00, 1C,
                       00, 00, 00, 00, 00, 00, 00, 00, 1C, 00, 00, 00,
                       18, 00, 00, 00, 84, 00, 00, 00, 03, 40, 00, 00,
                       00, 10, 00, 00, 00, 94, 00, 00, 00, 03, 60, 00,
                       00, 00, 20, 00, 00, 00, B4, 00, 00, 00, 05, 80,
                       00, 00, 00, 68, 00, 00, 00, 00, 00, 00, 00, 00,
                       E8, 00, 00, 00, 08, 00, 00, 00, 28, 01, 00, 00,
                       00, F0, 00, 00, 00, 74, 00, 00, 00, 00, 00, 00,
                       00, 00, 00, 00, 01, 7D, 01, 00, A8, FF, FF, FF ]
    alignment:       4
    references:
      - kind:            delta32ToGOT
        offset:          104
        target:          __ZTIP1A
  - name:            __ZTIP1A
    scope:           hidden
    type:            data
    content:         [ 10, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00,
                       00, 00, 00, 80, 00, 00, 00, 00, 00, 00, 00, 00,
                       00, 00, 00, 00, 00, 00, 00, 00 ]
    merge:           as-weak
    alignment:       16
shared-library-atoms:
  - name:            dyld_stub_binder
    load-name:       /usr/lib/libSystem.B.dylib
    type:            unknown
...

# Make sure we have a GOT relocation.
# This could only have come from __gcc_except_tab to __ZTIP1A
# CHECK: __got