13#ifndef LLVM_CODEGEN_WASMEHFUNCINFO_H
14#define LLVM_CODEGEN_WASMEHFUNCINFO_H
24class MachineBasicBlock;
26namespace WebAssembly {
47 for (
const auto P : Set)
48 Ret.insert(cast<const BasicBlock *>(
P));
71 for (
const auto P : Set)
72 Ret.insert(cast<MachineBasicBlock *>(
P));
This file defines the DenseMap class.
This file defines the PointerUnion class, which is a discriminated union of pointer types.
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
This file defines the SmallPtrSet class.
LLVM Basic Block Representation.
SmallPtrSet - This class implements a set which is optimized for holding SmallSize or less elements.
@ BasicBlock
Various leaf nodes.
This is an optimization pass for GlobalISel generic memory operations.
void calculateWasmEHInfo(const Function *F, WasmEHFuncInfo &EHInfo)
SmallPtrSet< const BasicBlock *, 4 > getUnwindSrcs(const BasicBlock *BB) const
DenseMap< BBOrMBB, SmallPtrSet< BBOrMBB, 4 > > UnwindDestToSrcs
const BasicBlock * getUnwindDest(const BasicBlock *BB) const
bool hasUnwindSrcs(const BasicBlock *BB) const
bool hasUnwindDest(MachineBasicBlock *MBB) const
SmallPtrSet< MachineBasicBlock *, 4 > getUnwindSrcs(MachineBasicBlock *MBB) const
void setUnwindDest(MachineBasicBlock *MBB, MachineBasicBlock *Dest)
bool hasUnwindSrcs(MachineBasicBlock *MBB) const
void setUnwindDest(const BasicBlock *BB, const BasicBlock *Dest)
MachineBasicBlock * getUnwindDest(MachineBasicBlock *MBB) const
bool hasUnwindDest(const BasicBlock *BB) const
DenseMap< BBOrMBB, BBOrMBB > SrcToUnwindDest