diff options
author | Vladimir Marko <vmarko@google.com> | 2015-10-06 17:30:45 +0000 |
---|---|---|
committer | Vladimir Marko <vmarko@google.com> | 2015-10-06 18:33:29 +0100 |
commit | c90d7c7cd3103a7b7ce62b40873d2dfcf306ca74 (patch) | |
tree | 661e5ef28a81124de7092ff05fd7f774a45481d4 /compiler/optimizing/optimizing_compiler.cc | |
parent | 8c812b71552a8a1b2bf06e430d355b12b7084807 (diff) |
Revert "Optimizing: Disable -Wframe-larger-than= for CompileOptimized()."
Instead, prevent inlining of AllocateRegisters() that uses
huge stack-allocated objects.
Bug: 24698147
This reverts commit 67f784e63343db5ecd6e584343484684ea60d1f8.
Change-Id: I94c408f7acf6e43897a248d9ea0761b979ed00c8
Diffstat (limited to 'compiler/optimizing/optimizing_compiler.cc')
-rw-r--r-- | compiler/optimizing/optimizing_compiler.cc | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/compiler/optimizing/optimizing_compiler.cc b/compiler/optimizing/optimizing_compiler.cc index 12d6b03a12..28514e18ec 100644 --- a/compiler/optimizing/optimizing_compiler.cc +++ b/compiler/optimizing/optimizing_compiler.cc @@ -31,6 +31,7 @@ #include "base/arena_allocator.h" #include "base/arena_containers.h" #include "base/dumpable.h" +#include "base/macros.h" #include "base/timing_logger.h" #include "boolean_simplifier.h" #include "bounds_check_elimination.h" @@ -534,6 +535,7 @@ static ArrayRef<const uint8_t> AlignVectorSize(ArenaVector<uint8_t>& vector) { return ArrayRef<const uint8_t>(vector); } +NO_INLINE // Avoid increasing caller's frame size by large stack-allocated objects. static void AllocateRegisters(HGraph* graph, CodeGenerator* codegen, PassObserver* pass_observer) { @@ -562,9 +564,6 @@ static ArenaVector<LinkerPatch> EmitAndSortLinkerPatches(CodeGenerator* codegen) return linker_patches; } -// TODO: The function below uses too much stack space. Bug: 24698147 -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wframe-larger-than=" CompiledMethod* OptimizingCompiler::CompileOptimized(HGraph* graph, CodeGenerator* codegen, CompilerDriver* compiler_driver, @@ -614,7 +613,6 @@ CompiledMethod* OptimizingCompiler::CompileOptimized(HGraph* graph, soa.Self()->TransitionFromSuspendedToRunnable(); return compiled_method; } -#pragma GCC diagnostic pop CompiledMethod* OptimizingCompiler::CompileBaseline( CodeGenerator* codegen, |