1# REQUIRES: x86 2# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-win32 %s -o %t1.obj 3# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-win32 %S/Inputs/icf-safe.s -o %t2.obj 4# RUN: lld-link /dll /noentry /out:%t.dll /verbose /opt:noref,icf %t1.obj %t2.obj 2>&1 | FileCheck %s 5# RUN: lld-link /dll /noentry /out:%t.dll /verbose /opt:noref,icf /export:g3 /export:g4 %t1.obj %t2.obj 2>&1 | FileCheck --check-prefix=EXPORT %s 6 7# CHECK-NOT: Selected 8# CHECK: Selected g3 9# CHECK-NEXT: Removed g4 10# CHECK-NOT: Removed 11# CHECK-NOT: Selected 12 13# EXPORT-NOT: Selected 14 15.section .rdata,"dr",one_only,g1 16.globl g1 17g1: 18.byte 1 19 20.section .rdata,"dr",one_only,g2 21.globl g2 22g2: 23.byte 1 24 25.section .rdata,"dr",one_only,g3 26.globl g3 27g3: 28.byte 2 29 30.section .rdata,"dr",one_only,g4 31.globl g4 32g4: 33.byte 2 34 35.addrsig 36.addrsig_sym g1 37.addrsig_sym g2 38