Skip to content

[regression] missed LTO oportunity #11739

@llvmbot

Description

@llvmbot
Bugzilla Link 11367
Resolution WONTFIX
Resolved on Nov 14, 2011 14:54
Version trunk
OS Linux
Reporter LLVM Bugzilla Contributor
CC @asl,@lattner,@echristo,@tlattner

Extended Description

given 3 IL files:

test1.ll:

define i32 @​f() {
entry:
ret i32 42
}

test2.ll:

define available_externally i32 @​g() {
entry:
ret i32 42
}

test3.ll:

define i32 @​h() {
entry:
%call = tail call i32 @​g()
ret i32 %call
}
declare i32 @​g()

if we link and optimized them with

$ llvm-link test1.ll test2.ll test3.ll -o all.bc
$ opt -std-link-opts all.bc -o opt.ll -S

we get:

define i32 @​f() nounwind readnone {
entry:
ret i32 42
}
define i32 @​h() {
entry:
%call = tail call i32 @​g()
ret i32 %call
}
declare i32 @​g()

with 9af37a3 (143524) reverted, we get:

define i32 @​f() nounwind readnone {
entry:
ret i32 42
}
define i32 @​h() nounwind readnone {
entry:
ret i32 42
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugzillaIssues migrated from bugzillawontfixIssue is real, but we can't or won't fix it. Not invalid

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions