public void setCondition(Expression cond) {
		this.cond = cond;
		if (type == POSSFOR) {
			/*
			 * We can now say, if this is a for block or not.
			 */
			if (cond.containsMatchingLoad((CombineableOperator) incrBlock
					.getInstruction())) {
				type = FOR;
				incrInstr = incrBlock.getInstruction();
				incrBlock.removeBlock();
				if (initBlock != null) {
					if (cond.containsMatchingLoad((CombineableOperator) initBlock
							.getInstruction())) {
						initInstr = initBlock.getInstruction();
						initBlock.removeBlock();
					}
				}
			} else {
				/*
				 * This is not a for block, as it seems first. Make it a while
				 * block again, and forget about init and incr.
				 */
				type = WHILE;
			}
			initBlock = incrBlock = null;
		}
		mayChangeJump = false;
	}