Revision: 126125
Author:   johannes
Date:     2007-04-14 17:14:13 -0700 (Sat, 14 Apr 2007)

Log Message:
-----------
Make llvm honor -fno-builtin.

Modified Paths:
--------------
    apple-local/branches/llvm/gcc/c-common.c
    apple-local/branches/llvm/gcc/c-common.h
    apple-local/branches/llvm/gcc/c-objc-common.h
    apple-local/branches/llvm/gcc/cp/cp-objcp-common.h
    apple-local/branches/llvm/gcc/langhooks-def.h
    apple-local/branches/llvm/gcc/langhooks.h
    apple-local/branches/llvm/gcc/llvm-backend.cpp

Modified: apple-local/branches/llvm/gcc/c-common.c
===================================================================
--- apple-local/branches/llvm/gcc/c-common.c    2007-04-14 19:42:51 UTC (rev 
126124)
+++ apple-local/branches/llvm/gcc/c-common.c    2007-04-15 00:14:13 UTC (rev 
126125)
@@ -8008,4 +8008,10 @@
 }
 /* APPLE LOCAL end CW asm blocks */
 
+/* APPLE LOCAL begin define this sensibly in all languages */
+bool c_flag_no_builtin(void) {
+  return flag_no_builtin;
+}
+/* APPLE LOCAL end define this sensibly in all languages */
+
 #include "gt-c-common.h"

Modified: apple-local/branches/llvm/gcc/c-common.h
===================================================================
--- apple-local/branches/llvm/gcc/c-common.h    2007-04-14 19:42:51 UTC (rev 
126124)
+++ apple-local/branches/llvm/gcc/c-common.h    2007-04-15 00:14:13 UTC (rev 
126125)
@@ -798,6 +798,8 @@
 /* APPLE LOCAL begin IMA built-in decl merging fix (radar 3645899) */
 extern bool builtin_function_disabled_p (const char *);
 /* APPLE LOCAL end */
+/* APPLE LOCAL define this sensibly in all languages */
+extern bool c_flag_no_builtin (void);
 
 /* This is the basic parsing function.  */
 extern void c_parse_file (void);

Modified: apple-local/branches/llvm/gcc/c-objc-common.h
===================================================================
--- apple-local/branches/llvm/gcc/c-objc-common.h       2007-04-14 19:42:51 UTC 
(rev 126124)
+++ apple-local/branches/llvm/gcc/c-objc-common.h       2007-04-15 00:14:13 UTC 
(rev 126125)
@@ -117,6 +117,10 @@
 #define LANG_HOOKS_TYPE_PROMOTES_TO c_type_promotes_to
 #undef LANG_HOOKS_REGISTER_BUILTIN_TYPE
 #define LANG_HOOKS_REGISTER_BUILTIN_TYPE c_register_builtin_type
+/* APPLE LOCAL begin define this sensibly in all languages */
+#undef LANG_HOOKS_FLAG_NO_BUILTIN
+#define LANG_HOOKS_FLAG_NO_BUILTIN c_flag_no_builtin
+/* APPLE LOCAL end define this sensibly in all languages */
 #undef LANG_HOOKS_TO_TARGET_CHARSET
 #define LANG_HOOKS_TO_TARGET_CHARSET c_common_to_target_charset
 

Modified: apple-local/branches/llvm/gcc/cp/cp-objcp-common.h
===================================================================
--- apple-local/branches/llvm/gcc/cp/cp-objcp-common.h  2007-04-14 19:42:51 UTC 
(rev 126124)
+++ apple-local/branches/llvm/gcc/cp/cp-objcp-common.h  2007-04-15 00:14:13 UTC 
(rev 126125)
@@ -152,6 +152,10 @@
 #define LANG_HOOKS_TYPE_PROMOTES_TO cxx_type_promotes_to
 #undef LANG_HOOKS_REGISTER_BUILTIN_TYPE
 #define LANG_HOOKS_REGISTER_BUILTIN_TYPE c_register_builtin_type
+/* APPLE LOCAL begin define this sensibly in all languages */
+#undef LANG_HOOKS_FLAG_NO_BUILTIN
+#define LANG_HOOKS_FLAG_NO_BUILTIN c_flag_no_builtin
+/* APPLE LOCAL end define this sensibly in all languages */
 #undef LANG_HOOKS_TO_TARGET_CHARSET
 #define LANG_HOOKS_TO_TARGET_CHARSET c_common_to_target_charset
 #undef LANG_HOOKS_GIMPLIFY_EXPR

Modified: apple-local/branches/llvm/gcc/langhooks-def.h
===================================================================
--- apple-local/branches/llvm/gcc/langhooks-def.h       2007-04-14 19:42:51 UTC 
(rev 126124)
+++ apple-local/branches/llvm/gcc/langhooks-def.h       2007-04-15 00:14:13 UTC 
(rev 126125)
@@ -129,6 +129,8 @@
 #define LANG_HOOKS_TREE_SIZE           lhd_tree_size
 #define LANG_HOOKS_TYPES_COMPATIBLE_P  lhd_types_compatible_p
 #define LANG_HOOKS_BUILTIN_FUNCTION    builtin_function
+/* APPLE LOCAL define this sensibly for all languages */
+#define LANG_HOOKS_FLAG_NO_BUILTIN      hook_bool_void_false
 #define LANG_HOOKS_TO_TARGET_CHARSET   lhd_to_target_charset
 
 #define LANG_HOOKS_FUNCTION_INIT       lhd_do_nothing_f
@@ -310,6 +312,8 @@
   LANG_HOOKS_GIMPLIFY_EXPR, \
   LANG_HOOKS_FOLD_OBJ_TYPE_REF, \
   LANG_HOOKS_BUILTIN_FUNCTION, \
+/* APPLE LOCAL define this sensibly for all languages */ \
+  LANG_HOOKS_FLAG_NO_BUILTIN, \
 }
 
 #endif /* GCC_LANG_HOOKS_DEF_H */

Modified: apple-local/branches/llvm/gcc/langhooks.h
===================================================================
--- apple-local/branches/llvm/gcc/langhooks.h   2007-04-14 19:42:51 UTC (rev 
126124)
+++ apple-local/branches/llvm/gcc/langhooks.h   2007-04-15 00:14:13 UTC (rev 
126125)
@@ -434,6 +434,9 @@
                            enum built_in_class bt_class,
                            const char *library_name, tree attrs);
 
+  /* APPLE LOCAL define this sensibly for all languages */
+  bool (*flag_no_builtin)(void);
+
   /* Whenever you add entries here, make sure you adjust langhooks-def.h
      and langhooks.c accordingly.  */
 };

Modified: apple-local/branches/llvm/gcc/llvm-backend.cpp
===================================================================
--- apple-local/branches/llvm/gcc/llvm-backend.cpp      2007-04-14 19:42:51 UTC 
(rev 126124)
+++ apple-local/branches/llvm/gcc/llvm-backend.cpp      2007-04-15 00:14:13 UTC 
(rev 126125)
@@ -64,6 +64,7 @@
 #include "tm.h"
 #include "function.h"
 #include "tree-inline.h"
+#include "langhooks.h"
 }
 
 // Non-zero if bytecode from PCH is successfully read.
@@ -298,7 +299,7 @@
     if (optimize > 1) {
       if (flag_inline_trees > 1)                // respect 
-fno-inline-functions
         PM->add(createFunctionInliningPass());  // Inline small functions
-      if (flag_unit_at_a_time)
+      if (flag_unit_at_a_time && !lang_hooks.flag_no_builtin())
         PM->add(createSimplifyLibCallsPass());  // Library Call Optimizations
 
       if (optimize > 2)


_______________________________________________
llvm-commits mailing list
[EMAIL PROTECTED]
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to