[Inliner] Discard empty COMDAT groups

COMDAT groups which have become rendered unused because of inline are
discardable if we can prove that we've made the group empty.

This fixes PR22285.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236539 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
David Majnemer
2015-05-05 20:14:22 +00:00
parent 2bce3aa5f1
commit cfdd004e7e
2 changed files with 67 additions and 12 deletions

View File

@@ -0,0 +1,15 @@
; RUN: opt < %s -inline -S | FileCheck %s
$f1 = comdat any
; CHECK-NOT: $f1 = comdat any
define void @f2() {
call void @f1()
ret void
}
; CHECK-LABEL: define void @f2
define linkonce_odr void @f1() comdat {
ret void
}
; CHECK-NOT: define linkonce_odr void @f1() comdat