Files
clang-p2996/llvm/test/tools/gold/X86/Inputs/common_thinlto.ll
Teresa Johnson f2b5ec6ef4 [ThinLTO] Keep common symbols in ThinLTO modules
Summary:
Skip the merging of common symbols for ThinLTO modules, they will be
merged by the final native object link. Trying to merge the symbols and
add to a combined module will incorrectly enable the common symbol to be
internalized in the ThinLTO module. Additionally, we will not want to
create a combined module for ThinLTO distributed builds.

This fixes failures in 7 cpu2006 benchmarks from the new LTO API in
ThinLTO mode.

Reviewers: mehdi_amini

Subscribers: pcc, llvm-commits, mehdi_amini

Differential Revision: https://reviews.llvm.org/D23637

llvm-svn: 279023
2016-08-18 01:08:50 +00:00

14 lines
333 B
LLVM

source_filename = "common2.c"
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
@P = external global i8* (...)*, align 8
; Function Attrs: nounwind uwtable
define void @foo() #0 {
entry:
%0 = load i8* (...)*, i8* (...)** @P, align 8
%call = call i8* (...) %0()
ret void
}