aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/llvm/iTerminators.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/include/llvm/iTerminators.h b/include/llvm/iTerminators.h
index 0101f85d4b..35b07171ff 100644
--- a/include/llvm/iTerminators.h
+++ b/include/llvm/iTerminators.h
@@ -78,11 +78,13 @@ public:
inline bool isUnconditional() const { return Operands.size() == 1; }
inline bool isConditional() const { return Operands.size() == 3; }
- inline const Value *getCondition() const {
- return isUnconditional() ? 0 : Operands[2].get();
+ inline Value *getCondition() const {
+ return isUnconditional() ? 0 : (Value*)Operands[2].get();
}
- Value *getCondition() {
- return isUnconditional() ? 0 : Operands[2].get();
+
+ void setCondition(Value *V) {
+ assert(isConditional() && "Cannot set condition of unconditional branch!");
+ setOperand(2, V);
}
// setUnconditionalDest - Change the current branch to an unconditional branch