From: Brenden Blanco Date: Thu, 5 May 2016 06:13:01 +0000 (-0700) Subject: fix llvm 3.9 build X-Git-Tag: v0.2.0~95^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a1e889b32bea86f41d18b38afe379fd0019a3c98;p=platform%2Fupstream%2Fbcc.git fix llvm 3.9 build Signed-off-by: Brenden Blanco --- diff --git a/src/cc/CMakeLists.txt b/src/cc/CMakeLists.txt index c905e3d..acef309 100644 --- a/src/cc/CMakeLists.txt +++ b/src/cc/CMakeLists.txt @@ -41,10 +41,13 @@ add_library(bcc-loader-static libbpf.c perf_reader.c bcc_elf.c bcc_proc.c) add_library(bcc-static STATIC bpf_common.cc bpf_module.cc shared_table.cc exported_files.cc bcc_syms.cc usdt_args.cc usdt.cc) set_target_properties(bcc-static PROPERTIES OUTPUT_NAME bcc) -# BPF is still experimental otherwise it should be available -#llvm_map_components_to_libnames(llvm_libs bpf mcjit irreader passes) -llvm_map_components_to_libnames(llvm_libs bitwriter bpfcodegen irreader linker +set(llvm_raw_libs bitwriter bpfcodegen irreader linker mcjit objcarcopts option passes nativecodegen) +list(FIND LLVM_AVAILABLE_LIBS "LLVMCoverage" _llvm_coverage) +if (${_llvm_coverage} GREATER -1) + list(APPEND llvm_raw_libs coverage) +endif() +llvm_map_components_to_libnames(llvm_libs ${llvm_raw_libs}) llvm_expand_dependencies(expanded_libs ${llvm_libs}) # order is important diff --git a/src/cc/frontends/b/codegen_llvm.cc b/src/cc/frontends/b/codegen_llvm.cc index 785531f..7adcb93 100644 --- a/src/cc/frontends/b/codegen_llvm.cc +++ b/src/cc/frontends/b/codegen_llvm.cc @@ -698,7 +698,8 @@ StatusTuple CodegenLLVM::emit_atomic_add(MethodCallExprNode *n) { Value *lhs = B.CreateBitCast(pop_expr(), Type::getInt64PtrTy(ctx())); TRY2(n->args_[1]->accept(this)); Value *rhs = B.CreateSExt(pop_expr(), B.getInt64Ty()); - AtomicRMWInst *atomic_inst = B.CreateAtomicRMW(AtomicRMWInst::Add, lhs, rhs, SequentiallyConsistent); + AtomicRMWInst *atomic_inst = B.CreateAtomicRMW( + AtomicRMWInst::Add, lhs, rhs, AtomicOrdering::SequentiallyConsistent); atomic_inst->setVolatile(false); return mkstatus(0); }