llvm-project/lld/test/undef-weak-coalesce.objtxt

118 lines
3.1 KiB
Plaintext

# RUN: lld-core %s | FileCheck %s
#
# Test that undefined symbols preserve their attributes and merge properly
#
---
atoms:
- name: regular_func
definition: undefined
can-be-null: never
- name: weak_import_func
definition: undefined
can-be-null: at-runtime
- name: weak_func
definition: undefined
can-be-null: at-buildtime
- name: bar1
definition: undefined
can-be-null: never
- name: bar2
definition: undefined
can-be-null: at-runtime
- name: bar3
definition: undefined
can-be-null: at-buildtime
- name: bar4
definition: undefined
can-be-null: never
- name: bar5
definition: undefined
can-be-null: at-runtime
- name: bar6
definition: undefined
can-be-null: at-buildtime
- name: bar7
definition: undefined
can-be-null: never
- name: bar8
definition: undefined
can-be-null: at-runtime
- name: bar9
definition: undefined
can-be-null: at-buildtime
---
atoms:
- name: bar1
definition: undefined
can-be-null: never
- name: bar2
definition: undefined
can-be-null: at-runtime
- name: bar3
definition: undefined
can-be-null: at-buildtime
- name: bar4
definition: undefined
can-be-null: at-runtime
- name: bar5
definition: undefined
can-be-null: at-buildtime
- name: bar6
definition: undefined
can-be-null: never
- name: bar7
definition: undefined
can-be-null: at-buildtime
- name: bar8
definition: undefined
can-be-null: never
- name: bar9
definition: undefined
can-be-null: at-runtime
...
# CHECK: name: regular_func
# CHECK: definition: undefined
# CHECK: name: weak_import_func
# CHECK: definition: undefined
# CHECK: can-be-null: at-runtime
# CHECK: name: weak_func
# CHECK: definition: undefined
# CHECK: can-be-null: at-buildtime
# CHECK: name: bar1
# CHECK: name: bar2
# CHECK: can-be-null: at-runtime
# CHECK: name: bar3
# CHECK: can-be-null: at-buildtime
# CHECK: name: bar4
# CHECK: name: bar5
# CHECK: can-be-null: at-runtime
# CHECK: name: bar7
# CHECK: name: bar6
# CHECK: name: bar8
# CHECK: name: bar9
# CHECK: can-be-null: at-runtime
# CHECK: ...