[PATCH] D15139: [IR] Reformulate LLVM's EH funclet IR
Andy Kaylor via llvm-commits
llvm-commits at lists.llvm.org
Wed Dec 2 17:59:22 PST 2015
andrew.w.kaylor added inline comments.
================
Comment at: include/llvm/IR/Instructions.h:3861
@@ +3860,3 @@
+ void setUnwindDest(BasicBlock *UnwindCase) {
+ assert(hasUnwindDest());
+ setOperand(1, UnwindCase);
----------------
Should you also assert(UnwindCase)?
================
Comment at: include/llvm/IR/Instructions.h:3889
@@ +3888,3 @@
+ /// Returns a read/write iterator that points one past the last
+ /// in the CatchSwitchInst.
+ op_iterator handler_end() { return op_end(); }
----------------
The word 'handler' seems to be missing here and below.
================
Comment at: include/llvm/IR/Instructions.h:4142
@@ +4141,3 @@
+public:
+ static CatchPadInst *Create(Value *OuterScope, ArrayRef<Value *> Args,
+ const Twine &NameStr = "",
----------------
Is OuterScope here really the outer scope or is it the CatchSwitch statement?
This feels like a glitch in the inheritance hierarchy. This argument has different significance for CleanupPadInst than it does here, right?
http://reviews.llvm.org/D15139
More information about the llvm-commits
mailing list