llvm-project/lld/test/core/gnulinkonce-simple.objtxt

77 lines
2.4 KiB
Plaintext

# RUN: lld -core %s %p/Inputs/gnulinkonce-simple.objtxt | 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
references:
- kind: layout-after
target: anotherfunction
- 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
...
#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: references:
#CHECK: - kind: layout-after
#CHECK: offset: 0
#CHECK: target: anotherfunction
#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