From b08ed1255fc34b9f34bcea66cd5e0a292af3d698 Mon Sep 17 00:00:00 2001 From: TDYa127 Date: Tue, 5 Jun 2012 23:51:19 -0700 Subject: Implement thin-lock fast path for compiler-llvm. Change-Id: I09d6a0dba4df7cbeb0c0e3f432ab3b09fce0846d --- src/compiler_llvm/compilation_unit.cc | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'src/compiler_llvm/compilation_unit.cc') diff --git a/src/compiler_llvm/compilation_unit.cc b/src/compiler_llvm/compilation_unit.cc index 5f239ab245..5dc03c361e 100644 --- a/src/compiler_llvm/compilation_unit.cc +++ b/src/compiler_llvm/compilation_unit.cc @@ -24,6 +24,7 @@ #include "os.h" #include "runtime_support_builder_arm.h" +#include "runtime_support_builder_thumb2.h" #include "runtime_support_builder_x86.h" #include @@ -180,13 +181,15 @@ CompilationUnit::CompilationUnit(InstructionSet insn_set, size_t elf_idx) // We always need a switch case, so just use a normal function. switch(insn_set_) { - default: - runtime_support_.reset(new RuntimeSupportBuilder(*context_, *module_, *irb_)); - break; + default: + runtime_support_.reset(new RuntimeSupportBuilder(*context_, *module_, *irb_)); + break; case kArm: - case kThumb2: runtime_support_.reset(new RuntimeSupportBuilderARM(*context_, *module_, *irb_)); break; + case kThumb2: + runtime_support_.reset(new RuntimeSupportBuilderThumb2(*context_, *module_, *irb_)); + break; case kX86: runtime_support_.reset(new RuntimeSupportBuilderX86(*context_, *module_, *irb_)); break; @@ -254,13 +257,13 @@ bool CompilationUnit::MaterializeToFile(llvm::raw_ostream& out_stream) { switch (insn_set_) { case kThumb2: target_triple = "thumb-none-linux-gnueabi"; - target_attr = "+thumb2,+neon,+neonfp,+vfp3"; + target_attr = "+thumb2,+neon,+neonfp,+vfp3,+db"; break; case kArm: target_triple = "armv7-none-linux-gnueabi"; // TODO: Fix for Xoom. - target_attr = "+v7,+neon,+neonfp,+vfp3"; + target_attr = "+v7,+neon,+neonfp,+vfp3,+db"; break; case kX86: -- cgit v1.2.3-59-g8ed1b