Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / tools / llvm-ifs / func.ifs
bloba34023a645fd29475256e87ad27844978dccef27
1 # RUN: llvm-ifs --input-format=IFS --output-ifs - %s %S/object.ifs | \
2 # RUN: FileCheck %s --check-prefixes=CHECK-IFS
4 # RUN: llvm-ifs --input-format=IFS --output-elf - %s %S/object.ifs | \
5 # RUN: llvm-readelf --all - | FileCheck %s --check-prefixes=CHECK-ELF
7 # RUN: llvm-ifs --input-format=IFS --strip-ifs-target --output-ifs %t.tbd %s %S/object.ifs
8 # RUN: llvm-ifs --input-format=IFS --target=x86_64-apple-darwin --output-tbd - %t.tbd | \
9 # RUN: FileCheck %s --check-prefixes=CHECK-DARWIN-TBD3
11 # RUN: llvm-ifs --input-format=IFS --output-ifs - %s %s | \
12 # RUN: FileCheck %s --check-prefixes=CHECK-MERGE-IFS
14 # CHECK-IFS: --- !ifs-v1
15 # CHECK-IFS-NEXT: IfsVersion: 3.0
16 # CHECK-IFS-NEXT: Target:          x86_64-unknown-linux-gnu
17 # CHECK-IFS-NEXT: Symbols:
18 # CHECK-IFS-DAG:   - { Name: a, Type: Func }
19 # CHECK-IFS-DAG:   - { Name: b, Type: Object, Size: 4 }
20 # CHECK-IFS: ...
22 # CHECK-ELF: ELF Header:
23 # CHECK-ELF:   Class:                             ELF64
24 # CHECK-ELF:   Type:                              DYN (Shared object file)
25 # CHECK-ELF:   FUNC    GLOBAL DEFAULT  1 a
26 # CHECK-ELF:   OBJECT  GLOBAL DEFAULT  1 b
28 # CHECK-DARWIN-TBD3: --- !tapi-tbd-v3
29 # CHECK-DARWIN-TBD3-NEXT: archs:           [ x86_64 ]
30 # CHECK-DARWIN-TBD3-NEXT: platform:        macosx
31 # CHECK-DARWIN-TBD3-NEXT: flags:           [ flat_namespace, not_app_extension_safe ]
32 # CHECK-DARWIN-TBD3-NEXT: install-name:    ''
33 # CHECK-DARWIN-TBD3-NEXT: current-version: 0
34 # CHECK-DARWIN-TBD3-NEXT: compatibility-version: 0
35 # CHECK-DARWIN-TBD3-NEXT: objc-constraint: none
36 # CHECK-DARWIN-TBD3-NEXT: exports:
37 # CHECK-DARWIN-TBD3-NEXT:   - archs:           [ x86_64 ]
38 # CHECK-DARWIN-TBD3-NEXT:     symbols:         [ a, b ]
39 # CHECK-DARWIN-TBD3-NEXT: ...
41 # Here we are testing to see if two identical symbols will merge.
42 # CHECK-MERGE-IFS: --- !ifs-v1
43 # CHECK-MERGE-IFS-NEXT: IfsVersion: 3.0
44 # CHECK-MERGE-IFS-NEXT: Target:          x86_64-unknown-linux-gnu
45 # CHECK-MERGE-IFS-NEXT: Symbols:
46 # CHECK-MERGE-IFS-NEXT:   - { Name: a, Type: Func }
47 # CHECK-MERGE-IFS-NEXT: ...
49 --- !ifs-v1
50 IfsVersion: 3.0
51 Target: x86_64-unknown-linux-gnu
52 Symbols:
53   - { Name: a, Type: Func }
54 ...