From 71edaf4d01c9f0bffa3f51354c1611c3969a2383 Mon Sep 17 00:00:00 2001
From: Yang Tse <yangsita@gmail.com>
Date: Fri, 24 Oct 2008 12:23:24 +0000
Subject: [PATCH] some more temporary magic for the icc seg-fault issue

---
 ares/m4/cares-compilers.m4 | 9 +++++++++
 m4/curl-compilers.m4       | 9 +++++++++
 2 files changed, 18 insertions(+)

diff --git a/ares/m4/cares-compilers.m4 b/ares/m4/cares-compilers.m4
index b6fbff98a..04c002631 100644
--- a/ares/m4/cares-compilers.m4
+++ b/ares/m4/cares-compilers.m4
@@ -951,8 +951,17 @@ AC_DEFUN([CARES_SET_COMPILER_WARNING_OPTS], [
         tmp_CFLAGS="$tmp_CFLAGS -no-ansi-alias"
         dnl Value-safe optimizations on floating-point data
         tmp_CFLAGS="$tmp_CFLAGS -fp-model precise"
+        dnl Only icc 10.0 or later
+        if test "$compiler_num" -ge "1000"; then
+          dnl Disable vectorizer diagnostic information
+          tmp_CFLAGS="$tmp_CFLAGS -vec-report0"
+        fi
         dnl Disable some optimizations to debug icc 9.1 SIGSEGV
         if test "$INTEL_UNIX_C_OPT_SIGSEGV" = "yes"; then
+          dnl Disable interprocedural optimizations
+          tmp_CFLAGS="$tmp_CFLAGS -no-ip -no-ipo"
+          dnl Separate functions for the linker
+          tmp_CFLAGS="$tmp_CFLAGS -ffunction-sections"
           dnl Disable inlining of user-defined functions
           tmp_CFLAGS="$tmp_CFLAGS -Ob0"
           dnl Disable inline expansion of intrinsic functions
diff --git a/m4/curl-compilers.m4 b/m4/curl-compilers.m4
index 75ffac326..e0cf59fe3 100644
--- a/m4/curl-compilers.m4
+++ b/m4/curl-compilers.m4
@@ -957,8 +957,17 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
         tmp_CFLAGS="$tmp_CFLAGS -no-ansi-alias"
         dnl Value-safe optimizations on floating-point data
         tmp_CFLAGS="$tmp_CFLAGS -fp-model precise"
+        dnl Only icc 10.0 or later
+        if test "$compiler_num" -ge "1000"; then
+          dnl Disable vectorizer diagnostic information
+          tmp_CFLAGS="$tmp_CFLAGS -vec-report0"
+        fi
         dnl Disable some optimizations to debug icc 9.1 SIGSEGV
         if test "$INTEL_UNIX_C_OPT_SIGSEGV" = "yes"; then
+          dnl Disable interprocedural optimizations
+          tmp_CFLAGS="$tmp_CFLAGS -no-ip -no-ipo"
+          dnl Separate functions for the linker
+          tmp_CFLAGS="$tmp_CFLAGS -ffunction-sections"
           dnl Disable inlining of user-defined functions
           tmp_CFLAGS="$tmp_CFLAGS -Ob0"
           dnl Disable inline expansion of intrinsic functions
-- 
2.40.0