Hi, Function fill_always_executed_in_1 computes basic blocks' always executed information, and it has below code and comment:
/* In a loop that is always entered we may proceed anyway. But record that we entered it and stop once we leave it. */ inn_loop = bb->loop_father; Then in following iterations, it breaks the loop if basic block not belonging to the inner loop is encountered. This means basic blocks after inner loop won't have always executed information computed, even they dominates the original loop's latch. Am I missing something? Why is that? Thanks, bin