Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / lld / test / COFF / lto-icf.ll
blob2862b0b31ddf02caaf7ca63be95059db6bd7b50b
1 ; REQUIRES: x86
2 ; Test that ICF works after LTO, i.e. both functions have the same address.
3 ; Previously, when we didn't enable function sections, ICF didn't work.
5 ; RUN: llvm-as %s -o %t.bc
6 ; RUN: lld-link -opt:icf -dll -noentry %t.bc -out:%t.dll
7 ; RUN: llvm-readobj --coff-exports %t.dll | FileCheck %s
9 ; CHECK: Export {
10 ; CHECK:   RVA: 0x[[RVA:.*]]
11 ; CHECK: Export {
12 ; CHECK:   RVA: 0x[[RVA]]
13 ; CHECK-NOT: Export
15 target datalayout = "e-m:w-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
16 target triple = "x86_64-pc-windows-msvc19.12.25835"
18 define dllexport ptr @icf_ptr() {
19 entry:
20   ret ptr null
23 define dllexport i64 @icf_int() {
24 entry:
25   ret i64 0