Reenable "Always import constants" after compile time fixes
authorTeresa Johnson <tejohnson@google.com>
Wed, 12 Feb 2020 23:17:56 +0000 (15:17 -0800)
committerTeresa Johnson <tejohnson@google.com>
Fri, 14 Feb 2020 14:37:14 +0000 (06:37 -0800)
Summary:
Reenables importing of constants by default, which was disabled in
D73724 due to excessive thin link times. These inefficiencies were
fixed in D73851.

I re-measured thin link times for a number of binaries that had compile
time explosions with importing of constants previously and confirmed
they no longer have any notable increases with it enabled.

Reviewers: wmi, evgeny777

Subscribers: hiraditya, arphaman, llvm-commits

Tags: #llvm

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

llvm/lib/IR/ModuleSummaryIndex.cpp

index 0a43e17..d92943d 100644 (file)
@@ -31,10 +31,8 @@ static cl::opt<bool> PropagateAttrs("propagate-attrs", cl::init(true),
                                     cl::Hidden,
                                     cl::desc("Propagate attributes in index"));
 
-// FIXME: Enable again when thin link compile time regressions understood and
-// addressed
 static cl::opt<bool> ImportConstantsWithRefs(
-    "import-constants-with-refs", cl::init(false), cl::Hidden,
+    "import-constants-with-refs", cl::init(true), cl::Hidden,
     cl::desc("Import constant global variables with references"));
 
 FunctionSummary FunctionSummary::ExternalNode =