Blame SOURCES/valgrind-3.10.1-fno-ipa-icf.patch

2601b6
commit d343ed4f0f11f2902d3ca858a4a0ecb8f1685587
2601b6
Author: mjw <mjw@a5019735-40e9-0310-863c-91ae7b9d1cf9>
2601b6
Date:   Tue Jun 2 20:23:06 2015 +0000
2601b6
2601b6
    GCC 5.1 is too smart. Disable Identical Code Folding for preload libs.
2601b6
    
2601b6
    We want to disabled Identical Code Folding for the tools preload shared
2601b6
    objects to get better backraces. For GCC 5.1 -fipa-icf is enabled by
2601b6
    default at -O2.
2601b6
    
2601b6
        The optimization reduces code size and may disturb
2601b6
        unwind stacks by replacing a function by equivalent
2601b6
        one with a different name.
2601b6
    
2601b6
    Add a configure check to see if GCC supports -fno-ipa-icf.
2601b6
    If it does then add the flag to AM_CFLAGS_PSO_BASE.
2601b6
    
2601b6
    Without this GCC will notice some of the preload replacement functions
2601b6
    in vg_replace_strmem are identical and fold them all into one picking
2601b6
    a random (existing) function name. This causes backtraces showing
2601b6
    completely unexpected function names.
2601b6
    
2601b6
    git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15305 a5019735-40e9-0310-863c-91ae7b9d1cf9
2601b6
2601b6
diff --git a/Makefile.all.am b/Makefile.all.am
2601b6
index d587548..a04cb4a 100644
2601b6
--- a/Makefile.all.am
2601b6
+++ b/Makefile.all.am
2601b6
@@ -133,10 +133,10 @@ endif
2601b6
 if VGCONF_OS_IS_DARWIN
2601b6
 AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-		     -fpic -fPIC -fno-builtin
2601b6
+		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 else
2601b6
 AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-		     -fpic -fno-builtin
2601b6
+		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 endif
2601b6
 
2601b6
 
2601b6
--- valgrind-3.10.1/configure.ac.orig	2015-06-03 14:28:49.535167119 +0200
2601b6
+++ valgrind-3.10.1/configure.ac	2015-06-03 14:29:16.594455917 +0200
2601b6
@@ -1744,6 +1744,32 @@
2601b6
   CXXFLAGS="$CXXFLAGS -fno-stack-protector"
2601b6
 fi
2601b6
 
2601b6
+# Does GCC support disabling Identical Code Folding?
2601b6
+# We want to disabled Identical Code Folding for the
2601b6
+# tools preload shared objects to get better backraces.
2601b6
+# For GCC 5.1+ -fipa-icf is enabled by default at -O2.
2601b6
+# "The optimization reduces code size and may disturb
2601b6
+#  unwind stacks by replacing a function by equivalent
2601b6
+#  one with a different name."
2601b6
+AC_MSG_CHECKING([if gcc accepts -fno-ipa-icf])
2601b6
+
2601b6
+safe_CFLAGS=$CFLAGS
2601b6
+CFLAGS="-fno-ipa-icf"
2601b6
+
2601b6
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
2601b6
+  return 0;
2601b6
+]])], [
2601b6
+no_ipa_icf=yes
2601b6
+FLAG_FNO_IPA_ICF="-fno-ipa-icf"
2601b6
+AC_MSG_RESULT([yes])
2601b6
+], [
2601b6
+no_ipa_icf=no
2601b6
+FLAG_FNO_IPA_ICF=""
2601b6
+AC_MSG_RESULT([no])
2601b6
+])
2601b6
+CFLAGS=$safe_CFLAGS
2601b6
+
2601b6
+AC_SUBST(FLAG_FNO_IPA_ICF)
2601b6
 
2601b6
 # does this compiler support --param inline-unit-growth=... ?
2601b6
 
2601b6
Only in valgrind-3.10.1: autom4te.cache
2601b6
diff -ru valgrind-3.10.1.orig/auxprogs/Makefile.in valgrind-3.10.1/auxprogs/Makefile.in
2601b6
--- valgrind-3.10.1.orig/auxprogs/Makefile.in	2015-06-03 14:30:23.567170612 +0200
2601b6
+++ valgrind-3.10.1/auxprogs/Makefile.in	2015-06-03 14:39:57.289288083 +0200
2601b6
@@ -177,6 +177,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -317,7 +318,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -329,7 +330,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/cachegrind/Makefile.in valgrind-3.10.1/cachegrind/Makefile.in
2601b6
--- valgrind-3.10.1.orig/cachegrind/Makefile.in	2015-06-03 14:30:23.564170581 +0200
2601b6
+++ valgrind-3.10.1/cachegrind/Makefile.in	2015-06-03 14:39:57.370288946 +0200
2601b6
@@ -231,6 +231,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -372,7 +373,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -384,7 +385,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/cachegrind/tests/Makefile.in valgrind-3.10.1/cachegrind/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/cachegrind/tests/Makefile.in	2015-06-03 14:30:23.563170570 +0200
2601b6
+++ valgrind-3.10.1/cachegrind/tests/Makefile.in	2015-06-03 14:39:57.433289617 +0200
2601b6
@@ -190,6 +190,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -330,7 +331,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -342,7 +343,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/cachegrind/tests/x86/Makefile.in valgrind-3.10.1/cachegrind/tests/x86/Makefile.in
2601b6
--- valgrind-3.10.1.orig/cachegrind/tests/x86/Makefile.in	2015-06-03 14:30:23.562170559 +0200
2601b6
+++ valgrind-3.10.1/cachegrind/tests/x86/Makefile.in	2015-06-03 14:39:57.489290214 +0200
2601b6
@@ -142,6 +142,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -282,7 +283,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -294,7 +295,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/callgrind/Makefile.in valgrind-3.10.1/callgrind/Makefile.in
2601b6
--- valgrind-3.10.1.orig/callgrind/Makefile.in	2015-06-03 14:30:23.561170548 +0200
2601b6
+++ valgrind-3.10.1/callgrind/Makefile.in	2015-06-03 14:39:57.618291589 +0200
2601b6
@@ -244,6 +244,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -385,7 +386,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -397,7 +398,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/callgrind/tests/Makefile.in valgrind-3.10.1/callgrind/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/callgrind/tests/Makefile.in	2015-06-03 14:30:23.559170527 +0200
2601b6
+++ valgrind-3.10.1/callgrind/tests/Makefile.in	2015-06-03 14:39:57.677292217 +0200
2601b6
@@ -183,6 +183,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -323,7 +324,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -335,7 +336,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/config.h.in valgrind-3.10.1/config.h.in
2601b6
--- valgrind-3.10.1.orig/config.h.in	2015-06-03 14:30:23.624171221 +0200
2601b6
+++ valgrind-3.10.1/config.h.in	2015-06-03 14:30:34.000000000 +0200
2601b6
@@ -33,62 +33,12 @@
2601b6
 /* path to GDB */
2601b6
 #undef GDB_PATH
2601b6
 
2601b6
-/* Define to 1 if you're using glibc 2.10.x */
2601b6
-#undef GLIBC_2_10
2601b6
+/* Define to 1 if index() and strlen() have been optimized heavily (x86 glibc
2601b6
+   >= 2.12) */
2601b6
+#undef GLIBC_MANDATORY_INDEX_AND_STRLEN_REDIRECT
2601b6
 
2601b6
-/* Define to 1 if you're using glibc 2.11.x */
2601b6
-#undef GLIBC_2_11
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.12.x */
2601b6
-#undef GLIBC_2_12
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.13.x */
2601b6
-#undef GLIBC_2_13
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.14.x */
2601b6
-#undef GLIBC_2_14
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.15.x */
2601b6
-#undef GLIBC_2_15
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.16.x */
2601b6
-#undef GLIBC_2_16
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.17.x */
2601b6
-#undef GLIBC_2_17
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.18.x */
2601b6
-#undef GLIBC_2_18
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.19.x */
2601b6
-#undef GLIBC_2_19
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.2.x */
2601b6
-#undef GLIBC_2_2
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.20.x */
2601b6
-#undef GLIBC_2_20
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.3.x */
2601b6
-#undef GLIBC_2_3
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.4.x */
2601b6
-#undef GLIBC_2_4
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.5.x */
2601b6
-#undef GLIBC_2_5
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.6.x */
2601b6
-#undef GLIBC_2_6
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.7.x */
2601b6
-#undef GLIBC_2_7
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.8.x */
2601b6
-#undef GLIBC_2_8
2601b6
-
2601b6
-/* Define to 1 if you're using glibc 2.9.x */
2601b6
-#undef GLIBC_2_9
2601b6
+/* Define to 1 if strlen() has been optimized heavily (amd64 glibc >= 2.10) */
2601b6
+#undef GLIBC_MANDATORY_STRLEN_REDIRECT
2601b6
 
2601b6
 /* Define to 1 if gcc/as can do Altivec. */
2601b6
 #undef HAS_ALTIVEC
2601b6
Only in valgrind-3.10.1: config.h.in~
2601b6
diff -ru valgrind-3.10.1.orig/configure valgrind-3.10.1/configure
2601b6
--- valgrind-3.10.1.orig/configure	2015-06-03 14:30:23.624171221 +0200
2601b6
+++ valgrind-3.10.1/configure	2015-06-03 14:40:03.112350132 +0200
2601b6
@@ -685,6 +685,7 @@
2601b6
 DWARF4_FALSE
2601b6
 DWARF4_TRUE
2601b6
 FLAG_UNLIMITED_INLINE_UNIT_GROWTH
2601b6
+FLAG_FNO_IPA_ICF
2601b6
 FLAG_FNO_STACK_PROTECTOR
2601b6
 FLAG_W_EXTRA
2601b6
 FLAG_W_NO_STATIC_LOCAL_IN_INLINE
2601b6
@@ -8517,6 +8518,51 @@
2601b6
   CXXFLAGS="$CXXFLAGS -fno-stack-protector"
2601b6
 fi
2601b6
 
2601b6
+# Does GCC support disabling Identical Code Folding?
2601b6
+# We want to disabled Identical Code Folding for the
2601b6
+# tools preload shared objects to get better backraces.
2601b6
+# For GCC 5.1+ -fipa-icf is enabled by default at -O2.
2601b6
+# "The optimization reduces code size and may disturb
2601b6
+#  unwind stacks by replacing a function by equivalent
2601b6
+#  one with a different name."
2601b6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if gcc accepts -fno-ipa-icf" >&5
2601b6
+$as_echo_n "checking if gcc accepts -fno-ipa-icf... " >&6; }
2601b6
+
2601b6
+safe_CFLAGS=$CFLAGS
2601b6
+CFLAGS="-fno-ipa-icf"
2601b6
+
2601b6
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2601b6
+/* end confdefs.h.  */
2601b6
+
2601b6
+int
2601b6
+main ()
2601b6
+{
2601b6
+
2601b6
+  return 0;
2601b6
+
2601b6
+  ;
2601b6
+  return 0;
2601b6
+}
2601b6
+_ACEOF
2601b6
+if ac_fn_c_try_compile "$LINENO"; then :
2601b6
+
2601b6
+no_ipa_icf=yes
2601b6
+FLAG_FNO_IPA_ICF="-fno-ipa-icf"
2601b6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
2601b6
+$as_echo "yes" >&6; }
2601b6
+
2601b6
+else
2601b6
+
2601b6
+no_ipa_icf=no
2601b6
+FLAG_FNO_IPA_ICF=""
2601b6
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2601b6
+$as_echo "no" >&6; }
2601b6
+
2601b6
+fi
2601b6
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2601b6
+CFLAGS=$safe_CFLAGS
2601b6
+
2601b6
+
2601b6
 
2601b6
 # does this compiler support --param inline-unit-growth=... ?
2601b6
 
2601b6
diff -ru valgrind-3.10.1.orig/coregrind/Makefile.in valgrind-3.10.1/coregrind/Makefile.in
2601b6
--- valgrind-3.10.1.orig/coregrind/Makefile.in	2015-06-03 14:30:23.654171541 +0200
2601b6
+++ valgrind-3.10.1/coregrind/Makefile.in	2015-06-03 14:39:58.470300668 +0200
2601b6
@@ -811,6 +811,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -951,7 +952,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -963,7 +964,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/docs/Makefile.in valgrind-3.10.1/docs/Makefile.in
2601b6
--- valgrind-3.10.1.orig/docs/Makefile.in	2015-06-03 14:30:23.669171701 +0200
2601b6
+++ valgrind-3.10.1/docs/Makefile.in	2015-06-03 14:39:58.515301147 +0200
2601b6
@@ -99,6 +99,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
diff -ru valgrind-3.10.1.orig/drd/Makefile.in valgrind-3.10.1/drd/Makefile.in
2601b6
--- valgrind-3.10.1.orig/drd/Makefile.in	2015-06-03 14:30:23.623171210 +0200
2601b6
+++ valgrind-3.10.1/drd/Makefile.in	2015-06-03 14:39:58.673302831 +0200
2601b6
@@ -294,6 +294,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -435,7 +436,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -447,7 +448,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/drd/tests/Makefile.in valgrind-3.10.1/drd/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/drd/tests/Makefile.in	2015-06-03 14:30:23.620171178 +0200
2601b6
+++ valgrind-3.10.1/drd/tests/Makefile.in	2015-06-03 14:39:58.842304631 +0200
2601b6
@@ -566,6 +566,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -706,7 +707,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -718,7 +719,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/exp-bbv/Makefile.in valgrind-3.10.1/exp-bbv/Makefile.in
2601b6
--- valgrind-3.10.1.orig/exp-bbv/Makefile.in	2015-06-03 14:30:23.574170687 +0200
2601b6
+++ valgrind-3.10.1/exp-bbv/Makefile.in	2015-06-03 14:39:58.915305410 +0200
2601b6
@@ -184,6 +184,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -325,7 +326,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -337,7 +338,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/exp-bbv/tests/amd64-linux/Makefile.in valgrind-3.10.1/exp-bbv/tests/amd64-linux/Makefile.in
2601b6
--- valgrind-3.10.1.orig/exp-bbv/tests/amd64-linux/Makefile.in	2015-06-03 14:30:23.571170655 +0200
2601b6
+++ valgrind-3.10.1/exp-bbv/tests/amd64-linux/Makefile.in	2015-06-03 14:39:59.035306688 +0200
2601b6
@@ -162,6 +162,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -302,7 +303,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -314,7 +315,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/exp-bbv/tests/arm-linux/Makefile.in valgrind-3.10.1/exp-bbv/tests/arm-linux/Makefile.in
2601b6
--- valgrind-3.10.1.orig/exp-bbv/tests/arm-linux/Makefile.in	2015-06-03 14:30:23.573170676 +0200
2601b6
+++ valgrind-3.10.1/exp-bbv/tests/arm-linux/Makefile.in	2015-06-03 14:39:59.093307306 +0200
2601b6
@@ -145,6 +145,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -285,7 +286,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -297,7 +298,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/exp-bbv/tests/Makefile.in valgrind-3.10.1/exp-bbv/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/exp-bbv/tests/Makefile.in	2015-06-03 14:30:23.573170676 +0200
2601b6
+++ valgrind-3.10.1/exp-bbv/tests/Makefile.in	2015-06-03 14:39:58.972306017 +0200
2601b6
@@ -173,6 +173,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -313,7 +314,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -325,7 +326,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/exp-bbv/tests/ppc32-linux/Makefile.in valgrind-3.10.1/exp-bbv/tests/ppc32-linux/Makefile.in
2601b6
--- valgrind-3.10.1.orig/exp-bbv/tests/ppc32-linux/Makefile.in	2015-06-03 14:30:23.572170666 +0200
2601b6
+++ valgrind-3.10.1/exp-bbv/tests/ppc32-linux/Makefile.in	2015-06-03 14:39:59.154307956 +0200
2601b6
@@ -145,6 +145,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -285,7 +286,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -297,7 +298,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/exp-bbv/tests/x86/Makefile.in valgrind-3.10.1/exp-bbv/tests/x86/Makefile.in
2601b6
--- valgrind-3.10.1.orig/exp-bbv/tests/x86/Makefile.in	2015-06-03 14:30:23.569170634 +0200
2601b6
+++ valgrind-3.10.1/exp-bbv/tests/x86/Makefile.in	2015-06-03 14:39:59.274309235 +0200
2601b6
@@ -154,6 +154,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -294,7 +295,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -306,7 +307,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/exp-bbv/tests/x86-linux/Makefile.in valgrind-3.10.1/exp-bbv/tests/x86-linux/Makefile.in
2601b6
--- valgrind-3.10.1.orig/exp-bbv/tests/x86-linux/Makefile.in	2015-06-03 14:30:23.573170676 +0200
2601b6
+++ valgrind-3.10.1/exp-bbv/tests/x86-linux/Makefile.in	2015-06-03 14:39:59.212308574 +0200
2601b6
@@ -145,6 +145,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -285,7 +286,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -297,7 +298,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/exp-dhat/Makefile.in valgrind-3.10.1/exp-dhat/Makefile.in
2601b6
--- valgrind-3.10.1.orig/exp-dhat/Makefile.in	2015-06-03 14:30:23.561170548 +0200
2601b6
+++ valgrind-3.10.1/exp-dhat/Makefile.in	2015-06-03 14:39:59.347310013 +0200
2601b6
@@ -208,6 +208,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -349,7 +350,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -361,7 +362,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/exp-dhat/tests/Makefile.in valgrind-3.10.1/exp-dhat/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/exp-dhat/tests/Makefile.in	2015-06-03 14:30:23.561170548 +0200
2601b6
+++ valgrind-3.10.1/exp-dhat/tests/Makefile.in	2015-06-03 14:39:59.384310407 +0200
2601b6
@@ -99,6 +99,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
diff -ru valgrind-3.10.1.orig/exp-sgcheck/Makefile.in valgrind-3.10.1/exp-sgcheck/Makefile.in
2601b6
--- valgrind-3.10.1.orig/exp-sgcheck/Makefile.in	2015-06-03 14:30:23.857173707 +0200
2601b6
+++ valgrind-3.10.1/exp-sgcheck/Makefile.in	2015-06-03 14:39:59.479311419 +0200
2601b6
@@ -227,6 +227,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -368,7 +369,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -380,7 +381,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/exp-sgcheck/tests/Makefile.in valgrind-3.10.1/exp-sgcheck/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/exp-sgcheck/tests/Makefile.in	2015-06-03 14:30:23.857173707 +0200
2601b6
+++ valgrind-3.10.1/exp-sgcheck/tests/Makefile.in	2015-06-03 14:39:59.549312165 +0200
2601b6
@@ -170,6 +170,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -310,7 +311,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -322,7 +323,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/gdbserver_tests/Makefile.in valgrind-3.10.1/gdbserver_tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/gdbserver_tests/Makefile.in	2015-06-03 14:30:23.689171914 +0200
2601b6
+++ valgrind-3.10.1/gdbserver_tests/Makefile.in	2015-06-03 14:39:59.617312890 +0200
2601b6
@@ -180,6 +180,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -320,7 +321,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -332,7 +333,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/helgrind/Makefile.in valgrind-3.10.1/helgrind/Makefile.in
2601b6
--- valgrind-3.10.1.orig/helgrind/Makefile.in	2015-06-03 14:30:23.601170975 +0200
2601b6
+++ valgrind-3.10.1/helgrind/Makefile.in	2015-06-03 14:39:59.728314073 +0200
2601b6
@@ -259,6 +259,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -400,7 +401,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -412,7 +413,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/helgrind/tests/Makefile.in valgrind-3.10.1/helgrind/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/helgrind/tests/Makefile.in	2015-06-03 14:30:23.597170933 +0200
2601b6
+++ valgrind-3.10.1/helgrind/tests/Makefile.in	2015-06-03 14:39:59.839315256 +0200
2601b6
@@ -396,6 +396,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -536,7 +537,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -548,7 +549,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/include/Makefile.in valgrind-3.10.1/include/Makefile.in
2601b6
--- valgrind-3.10.1.orig/include/Makefile.in	2015-06-03 14:30:23.631171295 +0200
2601b6
+++ valgrind-3.10.1/include/Makefile.in	2015-06-03 14:39:59.883315724 +0200
2601b6
@@ -132,6 +132,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
diff -ru valgrind-3.10.1.orig/lackey/Makefile.in valgrind-3.10.1/lackey/Makefile.in
2601b6
--- valgrind-3.10.1.orig/lackey/Makefile.in	2015-06-03 14:30:23.602170986 +0200
2601b6
+++ valgrind-3.10.1/lackey/Makefile.in	2015-06-03 14:39:59.954316481 +0200
2601b6
@@ -184,6 +184,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -325,7 +326,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -337,7 +338,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/lackey/tests/Makefile.in valgrind-3.10.1/lackey/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/lackey/tests/Makefile.in	2015-06-03 14:30:23.602170986 +0200
2601b6
+++ valgrind-3.10.1/lackey/tests/Makefile.in	2015-06-03 14:39:59.991316875 +0200
2601b6
@@ -102,6 +102,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
diff -ru valgrind-3.10.1.orig/Makefile.in valgrind-3.10.1/Makefile.in
2601b6
--- valgrind-3.10.1.orig/Makefile.in	2015-06-03 14:30:23.855173685 +0200
2601b6
+++ valgrind-3.10.1/Makefile.in	2015-06-03 14:40:02.788346679 +0200
2601b6
@@ -210,6 +210,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -351,7 +352,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -363,7 +364,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/Makefile.vex.in valgrind-3.10.1/Makefile.vex.in
2601b6
--- valgrind-3.10.1.orig/Makefile.vex.in	2015-06-03 14:30:23.565170591 +0200
2601b6
+++ valgrind-3.10.1/Makefile.vex.in	2015-06-03 14:39:57.216287305 +0200
2601b6
@@ -283,6 +283,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -423,7 +424,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -435,7 +436,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/massif/Makefile.in valgrind-3.10.1/massif/Makefile.in
2601b6
--- valgrind-3.10.1.orig/massif/Makefile.in	2015-06-03 14:30:23.638171370 +0200
2601b6
+++ valgrind-3.10.1/massif/Makefile.in	2015-06-03 14:40:00.072317738 +0200
2601b6
@@ -239,6 +239,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -380,7 +381,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -392,7 +393,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/massif/tests/Makefile.in valgrind-3.10.1/massif/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/massif/tests/Makefile.in	2015-06-03 14:30:23.637171359 +0200
2601b6
+++ valgrind-3.10.1/massif/tests/Makefile.in	2015-06-03 14:40:00.148318548 +0200
2601b6
@@ -223,6 +223,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -363,7 +364,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -375,7 +376,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/Makefile.in valgrind-3.10.1/memcheck/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/Makefile.in	2015-06-03 14:30:23.855173685 +0200
2601b6
+++ valgrind-3.10.1/memcheck/Makefile.in	2015-06-03 14:40:00.251319646 +0200
2601b6
@@ -257,6 +257,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -398,7 +399,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -410,7 +411,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/amd64/Makefile.in valgrind-3.10.1/memcheck/tests/amd64/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/amd64/Makefile.in	2015-06-03 14:30:23.766172736 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/amd64/Makefile.in	2015-06-03 14:40:00.633323716 +0200
2601b6
@@ -190,6 +190,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -330,7 +331,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -342,7 +343,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/amd64-linux/Makefile.in valgrind-3.10.1/memcheck/tests/amd64-linux/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/amd64-linux/Makefile.in	2015-06-03 14:30:23.725172298 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/amd64-linux/Makefile.in	2015-06-03 14:40:00.564322981 +0200
2601b6
@@ -145,6 +145,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -285,7 +286,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -297,7 +298,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/common/Makefile.in valgrind-3.10.1/memcheck/tests/common/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/common/Makefile.in	2015-06-03 14:30:23.696171989 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/common/Makefile.in	2015-06-03 14:40:00.684324260 +0200
2601b6
@@ -124,6 +124,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -264,7 +265,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -276,7 +277,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/darwin/Makefile.in valgrind-3.10.1/memcheck/tests/darwin/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/darwin/Makefile.in	2015-06-03 14:30:23.730172352 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/darwin/Makefile.in	2015-06-03 14:40:00.746324920 +0200
2601b6
@@ -165,6 +165,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -305,7 +306,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -317,7 +318,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/linux/Makefile.in valgrind-3.10.1/memcheck/tests/linux/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/linux/Makefile.in	2015-06-03 14:30:23.728172330 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/linux/Makefile.in	2015-06-03 14:40:00.814325645 +0200
2601b6
@@ -191,6 +191,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -331,7 +332,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -343,7 +344,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/Makefile.in valgrind-3.10.1/memcheck/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/Makefile.in	2015-06-03 14:30:23.780172885 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/Makefile.in	2015-06-03 14:40:00.500322299 +0200
2601b6
@@ -845,6 +845,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -985,7 +986,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -997,7 +998,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/ppc32/Makefile.in valgrind-3.10.1/memcheck/tests/ppc32/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/ppc32/Makefile.in	2015-06-03 14:30:23.693171957 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/ppc32/Makefile.in	2015-06-03 14:40:00.874326284 +0200
2601b6
@@ -142,6 +142,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -282,7 +283,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -294,7 +295,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/ppc64/Makefile.in valgrind-3.10.1/memcheck/tests/ppc64/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/ppc64/Makefile.in	2015-06-03 14:30:23.772172800 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/ppc64/Makefile.in	2015-06-03 14:40:00.935326934 +0200
2601b6
@@ -142,6 +142,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -282,7 +283,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -294,7 +295,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/s390x/Makefile.in valgrind-3.10.1/memcheck/tests/s390x/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/s390x/Makefile.in	2015-06-03 14:30:23.692171946 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/s390x/Makefile.in	2015-06-03 14:40:01.002327648 +0200
2601b6
@@ -166,6 +166,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -306,7 +307,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -318,7 +319,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/vbit-test/Makefile.in valgrind-3.10.1/memcheck/tests/vbit-test/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/vbit-test/Makefile.in	2015-06-03 14:30:23.698172010 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/vbit-test/Makefile.in	2015-06-03 14:40:01.080328479 +0200
2601b6
@@ -164,6 +164,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -304,7 +305,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -316,7 +317,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/x86/Makefile.in valgrind-3.10.1/memcheck/tests/x86/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/x86/Makefile.in	2015-06-03 14:30:23.722172267 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/x86/Makefile.in	2015-06-03 14:40:01.223330003 +0200
2601b6
@@ -192,6 +192,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -332,7 +333,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -344,7 +345,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/memcheck/tests/x86-linux/Makefile.in valgrind-3.10.1/memcheck/tests/x86-linux/Makefile.in
2601b6
--- valgrind-3.10.1.orig/memcheck/tests/x86-linux/Makefile.in	2015-06-03 14:30:23.777172853 +0200
2601b6
+++ valgrind-3.10.1/memcheck/tests/x86-linux/Makefile.in	2015-06-03 14:40:01.144329161 +0200
2601b6
@@ -165,6 +165,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -305,7 +306,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -317,7 +318,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/mpi/Makefile.in valgrind-3.10.1/mpi/Makefile.in
2601b6
--- valgrind-3.10.1.orig/mpi/Makefile.in	2015-06-03 14:30:23.858173717 +0200
2601b6
+++ valgrind-3.10.1/mpi/Makefile.in	2015-06-03 14:40:01.290330717 +0200
2601b6
@@ -157,6 +157,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -297,7 +298,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -309,7 +310,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/Makefile.in valgrind-3.10.1/none/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/Makefile.in	2015-06-03 14:30:24.086176150 +0200
2601b6
+++ valgrind-3.10.1/none/Makefile.in	2015-06-03 14:40:01.365331516 +0200
2601b6
@@ -182,6 +182,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -323,7 +324,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -335,7 +336,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/amd64/Makefile.in valgrind-3.10.1/none/tests/amd64/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/amd64/Makefile.in	2015-06-03 14:30:24.020175446 +0200
2601b6
+++ valgrind-3.10.1/none/tests/amd64/Makefile.in	2015-06-03 14:40:01.616334191 +0200
2601b6
@@ -389,6 +389,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -529,7 +530,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -541,7 +542,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/arm/Makefile.in valgrind-3.10.1/none/tests/arm/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/arm/Makefile.in	2015-06-03 14:30:24.073176012 +0200
2601b6
+++ valgrind-3.10.1/none/tests/arm/Makefile.in	2015-06-03 14:40:01.707335160 +0200
2601b6
@@ -202,6 +202,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -342,7 +343,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -354,7 +355,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/arm64/Makefile.in valgrind-3.10.1/none/tests/arm64/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/arm64/Makefile.in	2015-06-03 14:30:24.000175233 +0200
2601b6
+++ valgrind-3.10.1/none/tests/arm64/Makefile.in	2015-06-03 14:40:01.771335843 +0200
2601b6
@@ -154,6 +154,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -294,7 +295,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -306,7 +307,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/darwin/Makefile.in valgrind-3.10.1/none/tests/darwin/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/darwin/Makefile.in	2015-06-03 14:30:24.008175318 +0200
2601b6
+++ valgrind-3.10.1/none/tests/darwin/Makefile.in	2015-06-03 14:40:01.829336460 +0200
2601b6
@@ -147,6 +147,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -287,7 +288,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -299,7 +300,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/linux/Makefile.in valgrind-3.10.1/none/tests/linux/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/linux/Makefile.in	2015-06-03 14:30:24.005175286 +0200
2601b6
+++ valgrind-3.10.1/none/tests/linux/Makefile.in	2015-06-03 14:40:01.888337089 +0200
2601b6
@@ -150,6 +150,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -290,7 +291,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -302,7 +303,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/Makefile.in valgrind-3.10.1/none/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/Makefile.in	2015-06-03 14:30:24.084176129 +0200
2601b6
+++ valgrind-3.10.1/none/tests/Makefile.in	2015-06-03 14:40:01.506333019 +0200
2601b6
@@ -535,6 +535,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -675,7 +676,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -687,7 +688,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/mips32/Makefile.in valgrind-3.10.1/none/tests/mips32/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/mips32/Makefile.in	2015-06-03 14:30:24.047175734 +0200
2601b6
+++ valgrind-3.10.1/none/tests/mips32/Makefile.in	2015-06-03 14:40:01.962337878 +0200
2601b6
@@ -221,6 +221,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -361,7 +362,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -373,7 +374,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/mips64/Makefile.in valgrind-3.10.1/none/tests/mips64/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/mips64/Makefile.in	2015-06-03 14:30:24.039175649 +0200
2601b6
+++ valgrind-3.10.1/none/tests/mips64/Makefile.in	2015-06-03 14:40:02.055338869 +0200
2601b6
@@ -276,6 +276,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -416,7 +417,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -428,7 +429,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/ppc32/Makefile.in valgrind-3.10.1/none/tests/ppc32/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/ppc32/Makefile.in	2015-06-03 14:30:23.911174283 +0200
2601b6
+++ valgrind-3.10.1/none/tests/ppc32/Makefile.in	2015-06-03 14:40:02.165340041 +0200
2601b6
@@ -291,6 +291,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -431,7 +432,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -443,7 +444,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/ppc64/Makefile.in valgrind-3.10.1/none/tests/ppc64/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/ppc64/Makefile.in	2015-06-03 14:30:24.080176086 +0200
2601b6
+++ valgrind-3.10.1/none/tests/ppc64/Makefile.in	2015-06-03 14:40:02.267341128 +0200
2601b6
@@ -260,6 +260,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -400,7 +401,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -412,7 +413,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/s390x/Makefile.in valgrind-3.10.1/none/tests/s390x/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/s390x/Makefile.in	2015-06-03 14:30:23.895174113 +0200
2601b6
+++ valgrind-3.10.1/none/tests/s390x/Makefile.in	2015-06-03 14:40:02.407342619 +0200
2601b6
@@ -589,6 +589,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -729,7 +730,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -741,7 +742,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/x86/Makefile.in valgrind-3.10.1/none/tests/x86/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/x86/Makefile.in	2015-06-03 14:30:23.964174849 +0200
2601b6
+++ valgrind-3.10.1/none/tests/x86/Makefile.in	2015-06-03 14:40:02.565344303 +0200
2601b6
@@ -338,6 +338,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -478,7 +479,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -490,7 +491,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/none/tests/x86-linux/Makefile.in valgrind-3.10.1/none/tests/x86-linux/Makefile.in
2601b6
--- valgrind-3.10.1.orig/none/tests/x86-linux/Makefile.in	2015-06-03 14:30:24.082176108 +0200
2601b6
+++ valgrind-3.10.1/none/tests/x86-linux/Makefile.in	2015-06-03 14:40:02.463343216 +0200
2601b6
@@ -143,6 +143,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -283,7 +284,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -295,7 +296,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/perf/Makefile.in valgrind-3.10.1/perf/Makefile.in
2601b6
--- valgrind-3.10.1.orig/perf/Makefile.in	2015-06-03 14:30:24.087176161 +0200
2601b6
+++ valgrind-3.10.1/perf/Makefile.in	2015-06-03 14:40:02.631345006 +0200
2601b6
@@ -176,6 +176,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -316,7 +317,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -328,7 +329,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.
2601b6
diff -ru valgrind-3.10.1.orig/shared/Makefile.in valgrind-3.10.1/shared/Makefile.in
2601b6
--- valgrind-3.10.1.orig/shared/Makefile.in	2015-06-03 14:30:23.564170581 +0200
2601b6
+++ valgrind-3.10.1/shared/Makefile.in	2015-06-03 14:40:02.665345369 +0200
2601b6
@@ -99,6 +99,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
diff -ru valgrind-3.10.1.orig/tests/Makefile.in valgrind-3.10.1/tests/Makefile.in
2601b6
--- valgrind-3.10.1.orig/tests/Makefile.in	2015-06-03 14:30:23.626171242 +0200
2601b6
+++ valgrind-3.10.1/tests/Makefile.in	2015-06-03 14:40:02.728346040 +0200
2601b6
@@ -174,6 +174,7 @@
2601b6
 ECHO_T = @ECHO_T@
2601b6
 EGREP = @EGREP@
2601b6
 EXEEXT = @EXEEXT@
2601b6
+FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
2601b6
 FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
2601b6
 FLAG_M32 = @FLAG_M32@
2601b6
 FLAG_M64 = @FLAG_M64@
2601b6
@@ -314,7 +315,7 @@
2601b6
 	-fno-builtin
2601b6
 
2601b6
 @VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_FALSE@		     -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # These flags are used for building the preload shared objects (PSOs).
2601b6
@@ -326,7 +327,7 @@
2601b6
 # results in segfaults like (eg) #324050.
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
2601b6
 @VGCONF_OS_IS_DARWIN_TRUE@		     -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
2601b6
-@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin
2601b6
+@VGCONF_OS_IS_DARWIN_TRUE@		     -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
2601b6
 
2601b6
 
2601b6
 # Flags for specific targets.