mirror of
https://github.com/ldc-developers/ldc.git
synced 2025-04-29 22:50:53 +03:00
Fix compilation with LLVM 14 (#3822)
This commit is contained in:
parent
613ed42dca
commit
1568d0cdca
13 changed files with 135 additions and 33 deletions
|
@ -11,18 +11,33 @@
|
|||
#include "gen/irstate.h"
|
||||
|
||||
AttrSet::AttrSet(const AttrSet &base, unsigned index, LLAttribute attribute)
|
||||
#if LDC_LLVM_VER >= 1400
|
||||
: set(base.set.addAttributeAtIndex(gIR->context(), index, attribute)) {}
|
||||
#else
|
||||
: set(base.set.addAttribute(gIR->context(), index, attribute)) {}
|
||||
#endif
|
||||
|
||||
AttrSet
|
||||
AttrSet::extractFunctionAndReturnAttributes(const llvm::Function *function) {
|
||||
auto old = function->getAttributes();
|
||||
return {LLAttributeList::get(gIR->context(), old.getFnAttributes(),
|
||||
old.getRetAttributes(), {})};
|
||||
return {LLAttributeList::get(gIR->context(),
|
||||
#if LDC_LLVM_VER >= 1400
|
||||
old.getFnAttrs(),
|
||||
old.getRetAttrs(),
|
||||
#else
|
||||
old.getFnAttributes(),
|
||||
old.getRetAttributes(),
|
||||
#endif
|
||||
{})};
|
||||
}
|
||||
|
||||
AttrSet &AttrSet::add(unsigned index, const llvm::AttrBuilder &builder) {
|
||||
if (builder.hasAttributes()) {
|
||||
#if LDC_LLVM_VER >= 1400
|
||||
set = set.addAttributesAtIndex(gIR->context(), index, builder);
|
||||
#else
|
||||
set = set.addAttributes(gIR->context(), index, builder);
|
||||
#endif
|
||||
}
|
||||
return *this;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue