Mercurial > hg > CbC > CbC_llvm
comparison lib/CodeGen/Analysis.cpp @ 134:3a76565eade5 LLVM5.0.1
update 5.0.1
author | mir3636 |
---|---|
date | Sat, 17 Feb 2018 09:57:20 +0900 |
parents | 803732b1fca8 |
children | c2174574ed3a |
comparison
equal
deleted
inserted
replaced
133:c60214abe0e8 | 134:3a76565eade5 |
---|---|
12 //===----------------------------------------------------------------------===// | 12 //===----------------------------------------------------------------------===// |
13 | 13 |
14 #include "llvm/CodeGen/Analysis.h" | 14 #include "llvm/CodeGen/Analysis.h" |
15 #include "llvm/Analysis/ValueTracking.h" | 15 #include "llvm/Analysis/ValueTracking.h" |
16 #include "llvm/CodeGen/MachineFunction.h" | 16 #include "llvm/CodeGen/MachineFunction.h" |
17 #include "llvm/CodeGen/MachineModuleInfo.h" | 17 #include "llvm/CodeGen/TargetInstrInfo.h" |
18 #include "llvm/CodeGen/TargetLowering.h" | |
19 #include "llvm/CodeGen/TargetSubtargetInfo.h" | |
18 #include "llvm/IR/DataLayout.h" | 20 #include "llvm/IR/DataLayout.h" |
19 #include "llvm/IR/DerivedTypes.h" | 21 #include "llvm/IR/DerivedTypes.h" |
20 #include "llvm/IR/Function.h" | 22 #include "llvm/IR/Function.h" |
21 #include "llvm/IR/Instructions.h" | 23 #include "llvm/IR/Instructions.h" |
22 #include "llvm/IR/IntrinsicInst.h" | 24 #include "llvm/IR/IntrinsicInst.h" |
23 #include "llvm/IR/LLVMContext.h" | 25 #include "llvm/IR/LLVMContext.h" |
24 #include "llvm/IR/Module.h" | 26 #include "llvm/IR/Module.h" |
25 #include "llvm/Support/ErrorHandling.h" | 27 #include "llvm/Support/ErrorHandling.h" |
26 #include "llvm/Support/MathExtras.h" | 28 #include "llvm/Support/MathExtras.h" |
27 #include "llvm/Target/TargetInstrInfo.h" | |
28 #include "llvm/Target/TargetLowering.h" | |
29 #include "llvm/Target/TargetSubtargetInfo.h" | |
30 #include "llvm/Transforms/Utils/GlobalStatus.h" | 29 #include "llvm/Transforms/Utils/GlobalStatus.h" |
31 | 30 |
32 using namespace llvm; | 31 using namespace llvm; |
33 | 32 |
34 /// Compute the linearized index of a member in a nested aggregate/struct/array | 33 /// Compute the linearized index of a member in a nested aggregate/struct/array |
667 if (!MF.hasEHFunclets()) | 666 if (!MF.hasEHFunclets()) |
668 return FuncletMembership; | 667 return FuncletMembership; |
669 | 668 |
670 int EntryBBNumber = MF.front().getNumber(); | 669 int EntryBBNumber = MF.front().getNumber(); |
671 bool IsSEH = isAsynchronousEHPersonality( | 670 bool IsSEH = isAsynchronousEHPersonality( |
672 classifyEHPersonality(MF.getFunction()->getPersonalityFn())); | 671 classifyEHPersonality(MF.getFunction().getPersonalityFn())); |
673 | 672 |
674 const TargetInstrInfo *TII = MF.getSubtarget().getInstrInfo(); | 673 const TargetInstrInfo *TII = MF.getSubtarget().getInstrInfo(); |
675 SmallVector<const MachineBasicBlock *, 16> FuncletBlocks; | 674 SmallVector<const MachineBasicBlock *, 16> FuncletBlocks; |
676 SmallVector<const MachineBasicBlock *, 16> UnreachableBlocks; | 675 SmallVector<const MachineBasicBlock *, 16> UnreachableBlocks; |
677 SmallVector<const MachineBasicBlock *, 16> SEHCatchPads; | 676 SmallVector<const MachineBasicBlock *, 16> SEHCatchPads; |