diff options
| author | 2013-11-25 16:24:17 -0800 | |
|---|---|---|
| committer | 2013-11-25 16:24:17 -0800 | |
| commit | fa1063b8b2fed872bb652be3737a576baeef3dc3 (patch) | |
| tree | 895d3f03073fca0ca6715bcb523816fa6f03cc0a /compiler/llvm | |
| parent | 4541c7a9423239f26b93a4d3dfb3712f89d788b6 (diff) | |
| parent | 26c6dce526a90a7345600f5f82050a42740d12f8 (diff) | |
am 26c6dce5: Merge branch \'dalvik-dev\' of persistent-https://googleplex-android.git.corp.google.com/platform/art into merge-goog-dalvik-dev-to-aosp-master
* commit '26c6dce526a90a7345600f5f82050a42740d12f8': (75 commits)
Fix dumpsys meminfo <pid>.
Minor field name cleanup in debugger.
Faster Signature::operator==(const StringPiece& rhs).
Add -xGc: MS, CMS, SS options to specify which GC to use.
Fix a crash with -XX:DumpGCPerformanceOnShutdown.
Add developer option for dumping GC cumulative timings on shutdown.
Compact zygote.
Fix a libartd.so boot crash when kMovingCollector is true.
Inline RosAlloc::Alloc().
Make verifier log hard failures by default.
Refactor intrinsic CAS, prepare for 64-bit version.
Search for miranda methods in virtual methods instead of interface.
Fix concurrent GC to properly handle no zygote.
Fix a libartd.so boot crash in Heap::AllocObjectWithAllocator()
Add histogram for GC pause times.
Remove sleep workaround in thread pool.
Avoid some string allocations.
Fix histogram test.
Improve histogram and timing logger dumping.
Fix memory leak caused by not adding lage objects to allocation stack.
...
Diffstat (limited to 'compiler/llvm')
| -rw-r--r-- | compiler/llvm/llvm_compilation_unit.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/llvm/llvm_compilation_unit.cc b/compiler/llvm/llvm_compilation_unit.cc index 038f5dc4eb..feb495e35f 100644 --- a/compiler/llvm/llvm_compilation_unit.cc +++ b/compiler/llvm/llvm_compilation_unit.cc @@ -211,6 +211,7 @@ bool LlvmCompilationUnit::MaterializeToRawOStream(::llvm::raw_ostream& out_strea ::llvm::TargetOptions target_options; target_options.FloatABIType = ::llvm::FloatABI::Soft; target_options.NoFramePointerElim = true; + target_options.NoFramePointerElimNonLeaf = true; target_options.UseSoftFloat = false; target_options.EnableFastISel = false; @@ -254,7 +255,7 @@ bool LlvmCompilationUnit::MaterializeToRawOStream(::llvm::raw_ostream& out_strea ::llvm::OwningPtr< ::llvm::tool_output_file> out_file( new ::llvm::tool_output_file(bitcode_filename_.c_str(), errmsg, - ::llvm::sys::fs::F_Binary)); + ::llvm::raw_fd_ostream::F_Binary)); if (!errmsg.empty()) { @@ -274,6 +275,7 @@ bool LlvmCompilationUnit::MaterializeToRawOStream(::llvm::raw_ostream& out_strea // pm_builder.Inliner = ::llvm::createAlwaysInlinerPass(); // pm_builder.Inliner = ::llvm::createPartialInliningPass(); pm_builder.OptLevel = 3; + pm_builder.DisableSimplifyLibCalls = 1; pm_builder.DisableUnitAtATime = 1; pm_builder.populateFunctionPassManager(fpm); pm_builder.populateModulePassManager(pm); |