diff options
Diffstat (limited to 'llvm/include')
| -rw-r--r-- | llvm/include/llvm/CodeGen/MachineBasicBlock.h | 9 | ||||
| -rw-r--r-- | llvm/include/llvm/CodeGen/WinEHFuncInfo.h | 2 |
2 files changed, 10 insertions, 1 deletions
diff --git a/llvm/include/llvm/CodeGen/MachineBasicBlock.h b/llvm/include/llvm/CodeGen/MachineBasicBlock.h index 511cc2a4500..33230f92828 100644 --- a/llvm/include/llvm/CodeGen/MachineBasicBlock.h +++ b/llvm/include/llvm/CodeGen/MachineBasicBlock.h @@ -114,6 +114,9 @@ protected: /// Indicate that this basic block is the entry block of an EH funclet. bool IsEHFuncletEntry = false; + /// Indicate that this basic block is the entry block of a cleanup funclet. + bool IsCleanupFuncletEntry = false; + /// \brief since getSymbol is a relatively heavy-weight operation, the symbol /// is only computed once and is cached. mutable MCSymbol *CachedMCSymbol = nullptr; @@ -392,6 +395,12 @@ public: /// Indicates if this is the entry block of an EH funclet. void setIsEHFuncletEntry(bool V = true) { IsEHFuncletEntry = V; } + /// Returns true if this is the entry block of a cleanup funclet. + bool isCleanupFuncletEntry() const { return IsCleanupFuncletEntry; } + + /// Indicates if this is the entry block of a cleanup funclet. + void setIsCleanupFuncletEntry(bool V = true) { IsCleanupFuncletEntry = V; } + // Code Layout methods. /// Move 'this' block before or after the specified block. This only moves diff --git a/llvm/include/llvm/CodeGen/WinEHFuncInfo.h b/llvm/include/llvm/CodeGen/WinEHFuncInfo.h index ac19ddf86bd..6563494357e 100644 --- a/llvm/include/llvm/CodeGen/WinEHFuncInfo.h +++ b/llvm/include/llvm/CodeGen/WinEHFuncInfo.h @@ -118,7 +118,7 @@ void parseEHActions(const IntrinsicInst *II, // exceptions on Windows. typedef PointerUnion<const BasicBlock *, MachineBasicBlock *> MBBOrBasicBlock; -typedef PointerUnion<const Value *, MachineBasicBlock *> ValueOrMBB; +typedef PointerUnion<const Value *, const MachineBasicBlock *> ValueOrMBB; struct WinEHUnwindMapEntry { int ToState; |

