More changes to the Attributes class in LLVM 3.2.

This commit is contained in:
kai 2012-10-20 17:22:55 +02:00
parent 141dfa338e
commit fde625b33d
5 changed files with 37 additions and 37 deletions

View file

@ -527,7 +527,7 @@ void X86_64TargetABI::rewriteFunctionType(TypeFunction* tf) {
{ {
Logger::println("Putting 'this' in register"); Logger::println("Putting 'this' in register");
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
fty.arg_this->attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::InReg)); fty.arg_this->attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::InReg));
#else #else
fty.arg_this->attrs = llvm::Attribute::InReg; fty.arg_this->attrs = llvm::Attribute::InReg;
#endif #endif
@ -537,7 +537,7 @@ void X86_64TargetABI::rewriteFunctionType(TypeFunction* tf) {
{ {
Logger::println("Putting context ptr in register"); Logger::println("Putting context ptr in register");
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
fty.arg_nest->attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::InReg)); fty.arg_nest->attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::InReg));
#else #else
fty.arg_nest->attrs = llvm::Attribute::InReg; fty.arg_nest->attrs = llvm::Attribute::InReg;
#endif #endif
@ -549,8 +549,8 @@ void X86_64TargetABI::rewriteFunctionType(TypeFunction* tf) {
// sret and inreg are incompatible, but the ABI requires the // sret and inreg are incompatible, but the ABI requires the
// sret parameter to be in RDI in this situation... // sret parameter to be in RDI in this situation...
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
sret->attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder(sret->attrs).addAttribute(llvm::Attributes::InReg) sret->attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder(sret->attrs).addAttribute(llvm::Attributes::InReg)
.removeAttribute(llvm::Attributes::StructRet)); .removeAttribute(llvm::Attributes::StructRet));
#else #else
sret->attrs = (sret->attrs | llvm::Attribute::InReg) sret->attrs = (sret->attrs | llvm::Attribute::InReg)
& ~llvm::Attribute::StructRet; & ~llvm::Attribute::StructRet;
@ -572,7 +572,7 @@ void X86_64TargetABI::rewriteFunctionType(TypeFunction* tf) {
if (xmmcount > 0) { if (xmmcount > 0) {
Logger::println("Putting float parameter in register"); Logger::println("Putting float parameter in register");
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
arg.attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder(arg.attrs).addAttribute(llvm::Attributes::InReg)); arg.attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder(arg.attrs).addAttribute(llvm::Attributes::InReg));
#else #else
arg.attrs |= llvm::Attribute::InReg; arg.attrs |= llvm::Attribute::InReg;
#endif #endif
@ -587,7 +587,7 @@ void X86_64TargetABI::rewriteFunctionType(TypeFunction* tf) {
{ {
Logger::println("Putting byref parameter in register"); Logger::println("Putting byref parameter in register");
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
arg.attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder(arg.attrs).addAttribute(llvm::Attributes::InReg)); arg.attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder(arg.attrs).addAttribute(llvm::Attributes::InReg));
#else #else
arg.attrs |= llvm::Attribute::InReg; arg.attrs |= llvm::Attribute::InReg;
#endif #endif
@ -597,7 +597,7 @@ void X86_64TargetABI::rewriteFunctionType(TypeFunction* tf) {
{ {
Logger::println("Putting pointer parameter in register"); Logger::println("Putting pointer parameter in register");
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
arg.attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder(arg.attrs).addAttribute(llvm::Attributes::InReg)); arg.attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder(arg.attrs).addAttribute(llvm::Attributes::InReg));
#else #else
arg.attrs |= llvm::Attribute::InReg; arg.attrs |= llvm::Attribute::InReg;
#endif #endif
@ -607,7 +607,7 @@ void X86_64TargetABI::rewriteFunctionType(TypeFunction* tf) {
{ {
Logger::println("Putting integral parameter in register"); Logger::println("Putting integral parameter in register");
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
arg.attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder(arg.attrs).addAttribute(llvm::Attributes::InReg)); arg.attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder(arg.attrs).addAttribute(llvm::Attributes::InReg));
#else #else
arg.attrs |= llvm::Attribute::InReg; arg.attrs |= llvm::Attribute::InReg;
#endif #endif
@ -621,7 +621,7 @@ void X86_64TargetABI::rewriteFunctionType(TypeFunction* tf) {
arg.ltype = compositeToInt.type(arg.type, arg.ltype); arg.ltype = compositeToInt.type(arg.type, arg.ltype);
arg.byref = false; arg.byref = false;
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
arg.attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::InReg)); arg.attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::InReg));
#else #else
arg.attrs = llvm::Attribute::InReg; arg.attrs = llvm::Attribute::InReg;
#endif #endif

View file

@ -116,7 +116,7 @@ struct X86TargetABI : TargetABI
{ {
Logger::println("Putting 'this' in register"); Logger::println("Putting 'this' in register");
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
fty.arg_this->attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::InReg)); fty.arg_this->attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::InReg));
#else #else
fty.arg_this->attrs = llvm::Attribute::InReg; fty.arg_this->attrs = llvm::Attribute::InReg;
#endif #endif
@ -125,7 +125,7 @@ struct X86TargetABI : TargetABI
{ {
Logger::println("Putting context ptr in register"); Logger::println("Putting context ptr in register");
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
fty.arg_nest->attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::InReg)); fty.arg_nest->attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::InReg));
#else #else
fty.arg_nest->attrs = llvm::Attribute::InReg; fty.arg_nest->attrs = llvm::Attribute::InReg;
#endif #endif
@ -136,8 +136,8 @@ struct X86TargetABI : TargetABI
// sret and inreg are incompatible, but the ABI requires the // sret and inreg are incompatible, but the ABI requires the
// sret parameter to be in EAX in this situation... // sret parameter to be in EAX in this situation...
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
sret->attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder(sret->attrs).addAttribute(llvm::Attributes::InReg) sret->attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder(sret->attrs).addAttribute(llvm::Attributes::InReg)
.removeAttribute(llvm::Attributes::StructRet)); .removeAttribute(llvm::Attributes::StructRet));
#else #else
sret->attrs = (sret->attrs | llvm::Attribute::InReg) sret->attrs = (sret->attrs | llvm::Attribute::InReg)
& ~llvm::Attribute::StructRet; & ~llvm::Attribute::StructRet;
@ -159,7 +159,7 @@ struct X86TargetABI : TargetABI
{ {
Logger::println("Putting last (byref) parameter in register"); Logger::println("Putting last (byref) parameter in register");
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
last->attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder(last->attrs).addAttribute(llvm::Attributes::InReg)); last->attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder(last->attrs).addAttribute(llvm::Attributes::InReg));
#else #else
last->attrs |= llvm::Attribute::InReg; last->attrs |= llvm::Attribute::InReg;
#endif #endif
@ -180,7 +180,7 @@ struct X86TargetABI : TargetABI
#endif #endif
} }
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
last->attrs = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder(last->attrs).addAttribute(llvm::Attributes::InReg)); last->attrs = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder(last->attrs).addAttribute(llvm::Attributes::InReg));
#else #else
last->attrs |= llvm::Attribute::InReg; last->attrs |= llvm::Attribute::InReg;
#endif #endif

View file

@ -70,7 +70,7 @@ llvm::FunctionType* DtoFunctionType(Type* type, Type* thistype, Type* nesttype,
{ {
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
fty.arg_sret = new IrFuncTyArg(rt, true, llvm::Attributes::get(gIR->context(), fty.arg_sret = new IrFuncTyArg(rt, true, llvm::Attributes::get(gIR->context(),
llvm::Attributes::Builder().addAttribute(llvm::Attributes::StructRet) llvm::AttrBuilder().addAttribute(llvm::Attributes::StructRet)
.addAttribute(llvm::Attributes::NoAlias) .addAttribute(llvm::Attributes::NoAlias)
#if !STRUCTTHISREF #if !STRUCTTHISREF
// In D2 where 'this' in structs is a reference, nocapture // In D2 where 'this' in structs is a reference, nocapture
@ -139,8 +139,8 @@ llvm::FunctionType* DtoFunctionType(Type* type, Type* thistype, Type* nesttype,
// _argptr // _argptr
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
fty.arg_argptr = new IrFuncTyArg(Type::tvoid->pointerTo(), false, fty.arg_argptr = new IrFuncTyArg(Type::tvoid->pointerTo(), false,
llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoAlias) llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoAlias)
.addAttribute(llvm::Attributes::NoCapture))); .addAttribute(llvm::Attributes::NoCapture)));
#else #else
fty.arg_argptr = new IrFuncTyArg(Type::tvoid->pointerTo(), false, NoAlias | NoCapture); fty.arg_argptr = new IrFuncTyArg(Type::tvoid->pointerTo(), false, NoAlias | NoCapture);
#endif #endif
@ -195,7 +195,7 @@ llvm::FunctionType* DtoFunctionType(Type* type, Type* thistype, Type* nesttype,
else if (abi->passByVal(byref ? argtype->pointerTo() : argtype)) else if (abi->passByVal(byref ? argtype->pointerTo() : argtype))
{ {
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
if (!byref) a = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder(a).addAttribute(llvm::Attributes::ByVal)); if (!byref) a = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder(a).addAttribute(llvm::Attributes::ByVal));
#else #else
if (!byref) a |= llvm::Attribute::ByVal; if (!byref) a |= llvm::Attribute::ByVal;
#endif #endif
@ -206,7 +206,7 @@ llvm::FunctionType* DtoFunctionType(Type* type, Type* thistype, Type* nesttype,
else if (!byref) else if (!byref)
{ {
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
a = llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder(a).addAttributes(DtoShouldExtend(argtype))); a = llvm::Attributes::get(gIR->context(), llvm::AttrBuilder(a).addAttributes(DtoShouldExtend(argtype)));
#else #else
a |= DtoShouldExtend(argtype); a |= DtoShouldExtend(argtype);
#endif #endif

View file

@ -223,35 +223,35 @@ static void LLVM_D_BuildRuntimeModule()
llvm::AttrListPtr llvm::AttrListPtr
NoAttrs, NoAttrs,
Attr_NoAlias Attr_NoAlias
= NoAttrs.addAttr(gIR->context(), 0, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoAlias))), = NoAttrs.addAttr(gIR->context(), 0, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoAlias))),
Attr_NoUnwind Attr_NoUnwind
= NoAttrs.addAttr(gIR->context(), ~0U, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoUnwind))), = NoAttrs.addAttr(gIR->context(), ~0U, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoUnwind))),
Attr_ReadOnly Attr_ReadOnly
= NoAttrs.addAttr(gIR->context(), ~0U, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::ReadOnly))), = NoAttrs.addAttr(gIR->context(), ~0U, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::ReadOnly))),
Attr_ReadOnly_NoUnwind Attr_ReadOnly_NoUnwind
= Attr_ReadOnly.addAttr(gIR->context(), ~0U, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoUnwind))), = Attr_ReadOnly.addAttr(gIR->context(), ~0U, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoUnwind))),
Attr_ReadOnly_1_NoCapture Attr_ReadOnly_1_NoCapture
= Attr_ReadOnly.addAttr(gIR->context(), 1, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoCapture))), = Attr_ReadOnly.addAttr(gIR->context(), 1, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoCapture))),
Attr_ReadOnly_1_3_NoCapture Attr_ReadOnly_1_3_NoCapture
= Attr_ReadOnly_1_NoCapture.addAttr(gIR->context(), 3, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoCapture))), = Attr_ReadOnly_1_NoCapture.addAttr(gIR->context(), 3, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoCapture))),
Attr_ReadOnly_1_4_NoCapture Attr_ReadOnly_1_4_NoCapture
= Attr_ReadOnly_1_NoCapture.addAttr(gIR->context(), 4, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoCapture))), = Attr_ReadOnly_1_NoCapture.addAttr(gIR->context(), 4, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoCapture))),
Attr_ReadOnly_NoUnwind_1_NoCapture Attr_ReadOnly_NoUnwind_1_NoCapture
= Attr_ReadOnly_1_NoCapture.addAttr(gIR->context(), ~0U, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoUnwind))), = Attr_ReadOnly_1_NoCapture.addAttr(gIR->context(), ~0U, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoUnwind))),
Attr_ReadNone Attr_ReadNone
= NoAttrs.addAttr(gIR->context(), ~0U, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::ReadNone))), = NoAttrs.addAttr(gIR->context(), ~0U, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::ReadNone))),
Attr_1_NoCapture Attr_1_NoCapture
= NoAttrs.addAttr(gIR->context(), 1, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoCapture))), = NoAttrs.addAttr(gIR->context(), 1, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoCapture))),
Attr_NoAlias_1_NoCapture Attr_NoAlias_1_NoCapture
= Attr_1_NoCapture.addAttr(gIR->context(), 0, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoAlias))), = Attr_1_NoCapture.addAttr(gIR->context(), 0, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoAlias))),
Attr_NoAlias_3_NoCapture Attr_NoAlias_3_NoCapture
= Attr_NoAlias.addAttr(gIR->context(), 3, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoCapture))), = Attr_NoAlias.addAttr(gIR->context(), 3, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoCapture))),
Attr_1_2_NoCapture Attr_1_2_NoCapture
= Attr_1_NoCapture.addAttr(gIR->context(), 2, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoCapture))), = Attr_1_NoCapture.addAttr(gIR->context(), 2, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoCapture))),
Attr_1_3_NoCapture Attr_1_3_NoCapture
= Attr_1_NoCapture.addAttr(gIR->context(), 3, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoCapture))), = Attr_1_NoCapture.addAttr(gIR->context(), 3, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoCapture))),
Attr_1_4_NoCapture Attr_1_4_NoCapture
= Attr_1_NoCapture.addAttr(gIR->context(), 4, llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::NoCapture))); = Attr_1_NoCapture.addAttr(gIR->context(), 4, llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::NoCapture)));
#else #else
llvm::AttrListPtr llvm::AttrListPtr
NoAttrs, NoAttrs,

View file

@ -44,7 +44,7 @@ llvm::Attributes DtoShouldExtend(Type* type)
case Tint8: case Tint8:
case Tint16: case Tint16:
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
return llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::SExt)); return llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::SExt));
#else #else
return llvm::Attribute::SExt; return llvm::Attribute::SExt;
#endif #endif
@ -52,7 +52,7 @@ llvm::Attributes DtoShouldExtend(Type* type)
case Tuns8: case Tuns8:
case Tuns16: case Tuns16:
#if LDC_LLVM_VER >= 302 #if LDC_LLVM_VER >= 302
return llvm::Attributes::get(gIR->context(), llvm::Attributes::Builder().addAttribute(llvm::Attributes::ZExt)); return llvm::Attributes::get(gIR->context(), llvm::AttrBuilder().addAttribute(llvm::Attributes::ZExt));
#else #else
return llvm::Attribute::ZExt; return llvm::Attribute::ZExt;
#endif #endif