[llvm-commits] [llvm-gcc-4.2] r130139 - in /llvm-gcc-4.2/trunk/gcc: llvm-backend.cpp opts.c
Evan Cheng
evan.cheng at apple.com
Mon Apr 25 13:04:03 PDT 2011
Author: evancheng
Date: Mon Apr 25 15:04:03 2011
New Revision: 130139
URL: http://llvm.org/viewvc/llvm-project?rev=130139&view=rev
Log:
Currently -Os and -Oz are the same. Change -Oz to significantly reduce inline threshold to make it useful for code that really cares about code size.
Modified:
llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
llvm-gcc-4.2/trunk/gcc/opts.c
Modified: llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp?rev=130139&r1=130138&r2=130139&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp Mon Apr 25 15:04:03 2011
@@ -81,6 +81,9 @@
#endif
}
+// Non-zero if -Oz is set.
+extern "C" unsigned int optimize_size_z;
+
// Non-zero if bytecode from PCH is successfully read.
int flag_llvm_pch_read;
@@ -387,7 +390,7 @@
static unsigned GuessAtInliningThreshold() {
if (optimize_size)
// Reduce inline limit.
- return 75;
+ return optimize_size_z ? 25 : 75;
if (optimize >= 3)
return 275;
Modified: llvm-gcc-4.2/trunk/gcc/opts.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/opts.c?rev=130139&r1=130138&r2=130139&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/opts.c (original)
+++ llvm-gcc-4.2/trunk/gcc/opts.c Mon Apr 25 15:04:03 2011
@@ -43,6 +43,11 @@
#include "hashtab.h"
#include "tree-pass.h"
+#ifdef ENABLE_LLVM
+/* Non-zero if -Oz is specified. */
+unsigned int optimize_size_z;
+#endif
+
/* Value of the -G xx switch, and whether it was passed or not. */
unsigned HOST_WIDE_INT g_switch_value;
bool g_switch_set;
@@ -590,10 +595,16 @@
{
unsigned int i, lang_mask;
/* APPLE LOCAL 4231773 */
+#ifndef ENABLE_LLVM
unsigned int optimize_size_z = 0;
+#endif
/* APPLE LOCAL AV 3846092 */
int saved_flag_strict_aliasing;
+#ifdef ENABLE_LLVM
+ optimize_size_z = 0;
+#endif
+
/* Perform language-specific options initialization. */
lang_mask = lang_hooks.init_options (argc, argv);
More information about the llvm-commits
mailing list