Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / lld / test / MachO / lto-save-temps.ll
blobd1b2cad33bc28cb2b2f321ebf2e18b1616e3668b
1 ; REQUIRES: x86
3 ; Test that we compile regular LTO inputs in a single task but handle ThinLTO
4 ; modules in separate tasks.
6 ; RUN: rm -rf %t; split-file %s %t
7 ; RUN: llvm-as %t/foo.ll -o %t/foo.o
8 ; RUN: llvm-as %t/bar.ll -o %t/bar.o
9 ; RUN: %lld -dylib -save-temps %t/foo.o %t/bar.o -o %t/test
10 ; RUN: llvm-objdump -d --no-show-raw-insn %t/test.lto.o | FileCheck %s --check-prefix=ALL
11 ; RUN: llvm-objdump -d --no-show-raw-insn %t/test | FileCheck %s --check-prefix=ALL
13 ; RUN: rm -rf %t; split-file %s %t
14 ; RUN: opt -module-summary %t/foo.ll -o %t/foo.o
15 ; RUN: opt -module-summary %t/bar.ll -o %t/bar.o
16 ; RUN: %lld -dylib -save-temps %t/foo.o %t/bar.o -o %t/test
17 ; RUN: llvm-objdump -d --no-show-raw-insn %t/test1.lto.o | FileCheck %s --check-prefix=FOO
18 ; RUN: llvm-objdump -d --no-show-raw-insn %t/test2.lto.o | FileCheck %s --check-prefix=MAIN
19 ; RUN: llvm-objdump -d --no-show-raw-insn %t/test | FileCheck %s --check-prefix=ALL
21 ; FOO:      <_foo>:
22 ; FOO-NEXT: retq
24 ; MAIN:      <_bar>:
25 ; MAIN-NEXT: retq
27 ; ALL:      <_foo>:
28 ; ALL-NEXT: retq
29 ; ALL:      <_bar>:
30 ; ALL-NEXT: retq
32 ;--- foo.ll
34 target triple = "x86_64-apple-macosx10.15.0"
35 target datalayout = "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
37 define void @foo() {
38   ret void
41 ;--- bar.ll
43 target triple = "x86_64-apple-macosx10.15.0"
44 target datalayout = "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
46 define void @bar() {
47   ret void