llvm-project/lld/test/core/gnulinkonce-remaining-undef...

81 lines
2.1 KiB
Plaintext

# RUN: lld -core %s | FileCheck %s
#
# Test that gnu linkonce sections are parsed and the first section selected for
# symbol resolution. The second file which has the same gnu linkonce section has
# a unresolved undefined symbol. lets make sure that the symbol is kept around
# in the final link and remains undefined.
#
---
defined-atoms:
- name: f1
scope: global
type: code
- name: f2
scope: global
type: code
- name: g1
scope: global
type: code
- name: d1
scope: global
type: data
- name: g1
scope: global
type: gnu-linkonce
references:
- kind: group-child
target: f1
- kind: group-child
target: f2
- kind: group-child
target: g1
- kind: group-child
target: d1
---
defined-atoms:
- name: anotherfunction
scope: global
type: data
- name: f1
scope: global
type: code
- name: f2
scope: global
type: code
- name: f3
scope: global
type: code
- name: g1
scope: global
type: code
- name: d1
scope: global
type: data
- name: g1
scope: global
type: gnu-linkonce
references:
- kind: group-child
target: f1
- kind: group-child
target: f2
- kind: group-child
target: f3
- kind: group-child
target: g1
- kind: group-child
target: d1
---
undefined-atoms:
- name: f3
can-be-null: never
...
#CHECK: - name: anotherfunction
#CHECK: scope: global
#CHECK: type: data
#CHECK: undefined-atoms:
#CHECK: - name: f3