diff options
Diffstat (limited to 'lib/Transforms/IPO/PruneEH.cpp')
| -rw-r--r-- | lib/Transforms/IPO/PruneEH.cpp | 28 | 
1 files changed, 15 insertions, 13 deletions
| diff --git a/lib/Transforms/IPO/PruneEH.cpp b/lib/Transforms/IPO/PruneEH.cpp index fb4ecbfe7b08..73d9323195bb 100644 --- a/lib/Transforms/IPO/PruneEH.cpp +++ b/lib/Transforms/IPO/PruneEH.cpp @@ -16,16 +16,16 @@  #define DEBUG_TYPE "prune-eh"  #include "llvm/Transforms/IPO.h" -#include "llvm/CallGraphSCCPass.h" -#include "llvm/Constants.h" -#include "llvm/Function.h" -#include "llvm/LLVMContext.h" -#include "llvm/Instructions.h" -#include "llvm/IntrinsicInst.h" -#include "llvm/Analysis/CallGraph.h"  #include "llvm/ADT/SmallPtrSet.h"  #include "llvm/ADT/SmallVector.h"  #include "llvm/ADT/Statistic.h" +#include "llvm/Analysis/CallGraph.h" +#include "llvm/Analysis/CallGraphSCCPass.h" +#include "llvm/IR/Constants.h" +#include "llvm/IR/Function.h" +#include "llvm/IR/Instructions.h" +#include "llvm/IR/IntrinsicInst.h" +#include "llvm/IR/LLVMContext.h"  #include "llvm/Support/CFG.h"  #include <algorithm>  using namespace llvm; @@ -140,15 +140,17 @@ bool PruneEH::runOnSCC(CallGraphSCC &SCC) {        AttrBuilder NewAttributes;        if (!SCCMightUnwind) -        NewAttributes.addAttribute(Attributes::NoUnwind); +        NewAttributes.addAttribute(Attribute::NoUnwind);        if (!SCCMightReturn) -        NewAttributes.addAttribute(Attributes::NoReturn); +        NewAttributes.addAttribute(Attribute::NoReturn);        Function *F = (*I)->getFunction(); -      const AttrListPtr &PAL = F->getAttributes(); -      const AttrListPtr &NPAL = PAL.addAttr(F->getContext(), ~0, -                                            Attributes::get(F->getContext(), -                                                            NewAttributes)); +      const AttributeSet &PAL = F->getAttributes(); +      const AttributeSet &NPAL = +        PAL.addAttributes(F->getContext(), AttributeSet::FunctionIndex, +                          AttributeSet::get(F->getContext(), +                                            AttributeSet::FunctionIndex, +                                            NewAttributes));        if (PAL != NPAL) {          MadeChange = true;          F->setAttributes(NPAL); | 
