Permalink
Browse files

AttrListPtr is renamed to AttributeSet in LLVM 3.3.

  • Loading branch information...
1 parent b92c461 commit 1a06130cfacc06a8351611c1197ab060001e333f @redstar redstar committed Dec 9, 2012
Showing with 20 additions and 2 deletions.
  1. +8 −1 gen/functions.cpp
  2. +4 −0 gen/llvmhelpers.h
  3. +4 −0 gen/runtime.cpp
  4. +4 −1 gen/tocall.cpp
View
@@ -567,7 +567,11 @@ static void set_param_attrs(TypeFunction* f, llvm::Function* func, FuncDeclarati
// Merge in any old attributes (attributes for the function itself are
// also stored in a list slot).
const size_t newSize = attrs.size();
+#if LDC_LLVM_VER >= 303
+ llvm::AttributeSet oldAttrs = func->getAttributes();
+#else
llvm::AttrListPtr oldAttrs = func->getAttributes();
+#endif
for (size_t i = 0; i < oldAttrs.getNumSlots(); ++i) {
llvm::AttributeWithIndex curr = oldAttrs.getSlot(i);
@@ -591,7 +595,10 @@ static void set_param_attrs(TypeFunction* f, llvm::Function* func, FuncDeclarati
}
}
-#if LDC_LLVM_VER >= 302
+#if LDC_LLVM_VER >= 303
+ llvm::AttributeSet attrlist = llvm::AttributeSet::get(gIR->context(),
+ llvm::ArrayRef<llvm::AttributeWithIndex>(attrs));
+#elif LDC_LLVM_VER >= 302
llvm::AttrListPtr attrlist = llvm::AttrListPtr::get(gIR->context(),
llvm::ArrayRef<llvm::AttributeWithIndex>(attrs));
#else
View
@@ -191,7 +191,11 @@ LLValue* DtoCallableValue(DValue* fn);
LLFunctionType* DtoExtractFunctionType(LLType* type);
///
+#if LDC_LLVM_VER >= 303
+void DtoBuildDVarArgList(std::vector<LLValue*>& args, llvm::AttributeSet& palist, TypeFunction* tf, Expressions* arguments, size_t argidx);
+#else
void DtoBuildDVarArgList(std::vector<LLValue*>& args, llvm::AttrListPtr& palist, TypeFunction* tf, Expressions* arguments, size_t argidx);
+#endif
///
DValue* DtoCallFunction(Loc& loc, Type* resulttype, DValue* fnval, Expressions* arguments);
View
@@ -220,7 +220,11 @@ static void LLVM_D_BuildRuntimeModule()
// Construct some attribute lists used below (possibly multiple times)
#if LDC_LLVM_VER >= 302
+#if LDC_LLVM_VER >= 303
+ llvm::AttributeSet
+#else
llvm::AttrListPtr
+#endif
NoAttrs,
Attr_NoAlias
= NoAttrs.addAttr(gIR->context(), 0, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoAlias))),
View
@@ -717,7 +717,10 @@ DValue* DtoCallFunction(Loc& loc, Type* resulttype, DValue* fnval, Expressions*
}
// set calling convention and parameter attributes
-#if LDC_LLVM_VER >= 302
+#if LDC_LLVM_VER >= 303
+ llvm::AttributeSet attrlist = llvm::AttributeSet::get(gIR->context(),
+ llvm::ArrayRef<llvm::AttributeWithIndex>(attrs));
+#elif LDC_LLVM_VER == 302
llvm::AttrListPtr attrlist = llvm::AttrListPtr::get(gIR->context(),
llvm::ArrayRef<llvm::AttributeWithIndex>(attrs));
#else

0 comments on commit 1a06130

Please sign in to comment.