forked from OSchip/llvm-project
81 lines
2.4 KiB
Plaintext
81 lines
2.4 KiB
Plaintext
# RUN: lld -core %s | FileCheck %s
|
|
|
|
#
|
|
# Test that gnu linkonce sections are parsed properly when there is a reference to a
|
|
# atom from outside the gnu linkonce section.
|
|
#
|
|
|
|
---
|
|
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: d1
|
|
- kind: group-child
|
|
target: g1
|
|
- name: anotherfunction
|
|
scope: global
|
|
type: data
|
|
references:
|
|
- kind: layout-before
|
|
target: f1
|
|
---
|
|
undefined-atoms:
|
|
- name: f1
|
|
can-be-null: never
|
|
...
|
|
|
|
#CHECK: defined-atoms:
|
|
#CHECK: - name: g1
|
|
#CHECK: ref-name: [[PARENT:[a-zA-Z\.0-9_]+]]
|
|
#CHECK: scope: global
|
|
#CHECK: type: gnu-linkonce
|
|
#CHECK: references:
|
|
#CHECK: - kind: group-child
|
|
#CHECK: offset: 0
|
|
#CHECK: target: f1
|
|
#CHECK: - kind: group-child
|
|
#CHECK: offset: 0
|
|
#CHECK: target: f2
|
|
#CHECK: - kind: group-child
|
|
#CHECK: offset: 0
|
|
#CHECK: target: d1
|
|
#CHECK: - kind: group-child
|
|
#CHECK: offset: 0
|
|
#CHECK: target: [[GCHILD:[a-zA-Z\.0-9_]+]]
|
|
#CHECK: - name: f1
|
|
#CHECK: scope: global
|
|
#CHECK: - name: f2
|
|
#CHECK: scope: global
|
|
#CHECK: - name: d1
|
|
#CHECK: scope: global
|
|
#CHECK: type: data
|
|
#CHECK: - name: g1
|
|
#CHECK: ref-name: [[GCHILD]]
|
|
#CHECK: scope: global
|
|
#CHECK: - name: anotherfunction
|
|
#CHECK: scope: global
|
|
#CHECK: type: data
|
|
#CHECK: references:
|
|
#CHECK: - kind: layout-before
|
|
#CHECK: offset: 0
|
|
#CHECK: target: f1
|