From 5e9bdb784db8a66514380f32bc96ea6fbcce8f3f Mon Sep 17 00:00:00 2001
From: Craig Tiller <ctiller@google.com>
Date: Wed, 1 Mar 2017 08:32:38 -0800
Subject: [PATCH] Enable lto

---
 Makefile   | 10 ++++++----
 build.yaml | 10 ++++++----
 2 files changed, 12 insertions(+), 8 deletions(-)

diff --git a/Makefile b/Makefile
index 57e877beb0..567e4a6b28 100644
--- a/Makefile
+++ b/Makefile
@@ -92,7 +92,8 @@ CC_opt = $(DEFAULT_CC)
 CXX_opt = $(DEFAULT_CXX)
 LD_opt = $(DEFAULT_CC)
 LDXX_opt = $(DEFAULT_CXX)
-CPPFLAGS_opt = -O2
+CPPFLAGS_opt = -O3 -flto
+LDFLAGS_opt = -O3 -flto
 DEFINES_opt = NDEBUG
 
 VALID_CONFIG_basicprof = 1
@@ -208,8 +209,8 @@ CC_mutrace = $(DEFAULT_CC)
 CXX_mutrace = $(DEFAULT_CXX)
 LD_mutrace = $(DEFAULT_CC)
 LDXX_mutrace = $(DEFAULT_CXX)
-CPPFLAGS_mutrace = -O3 -fno-omit-frame-pointer
-LDFLAGS_mutrace = -rdynamic
+CPPFLAGS_mutrace = -O3 -fno-omit-frame-pointer -flto
+LDFLAGS_mutrace = -rdynamic -O3 -flto
 DEFINES_mutrace = NDEBUG
 
 VALID_CONFIG_counters = 1
@@ -217,7 +218,8 @@ CC_counters = $(DEFAULT_CC)
 CXX_counters = $(DEFAULT_CXX)
 LD_counters = $(DEFAULT_CC)
 LDXX_counters = $(DEFAULT_CXX)
-CPPFLAGS_counters = -O2 -DGPR_LOW_LEVEL_COUNTERS
+CPPFLAGS_counters = -O3 -flto -DGPR_LOW_LEVEL_COUNTERS
+LDFLAGS_counters = -O3 -flto
 DEFINES_counters = NDEBUG
 
 
diff --git a/build.yaml b/build.yaml
index 9ff37d59e1..442dacac6f 100644
--- a/build.yaml
+++ b/build.yaml
@@ -4031,8 +4031,9 @@ configs:
     CPPFLAGS: -O2 -DGRPC_BASIC_PROFILER -DGRPC_TIMERS_RDTSC
     DEFINES: NDEBUG
   counters:
-    CPPFLAGS: -O2 -DGPR_LOW_LEVEL_COUNTERS
+    CPPFLAGS: -O3 -flto -DGPR_LOW_LEVEL_COUNTERS
     DEFINES: NDEBUG
+    LDFLAGS: -O3 -flto
   dbg:
     CPPFLAGS: -O0
     DEFINES: _DEBUG DEBUG
@@ -4067,12 +4068,13 @@ configs:
     LDXX: clang++
     compile_the_world: true
   mutrace:
-    CPPFLAGS: -O3 -fno-omit-frame-pointer
+    CPPFLAGS: -O3 -fno-omit-frame-pointer -flto
     DEFINES: NDEBUG
-    LDFLAGS: -rdynamic
+    LDFLAGS: -rdynamic -O3 -flto
   opt:
-    CPPFLAGS: -O2
+    CPPFLAGS: -O3 -flto
     DEFINES: NDEBUG
+    LDFLAGS: -O3 -flto
   stapprof:
     CPPFLAGS: -O2 -DGRPC_STAP_PROFILER
     DEFINES: NDEBUG
-- 
GitLab