Commits

Xin Tong committed 5c96bc49454
RLE marks the LiveOut of unreachable block as 0. This is done to simplfy the SSAupdate etc, i.e. we do not need to place bogus value in the unreachable blocks in case a SILArgument needs to be constrcuted for this block's successors. This relies on simplifycfg or other passes to clean up the CFG before RLE is ran. isReachable logic is incorrect. This make RLE too conservative in some cases and incorrect in others . This fixed ASAN build break caused by commit 925eb2e0d9717bb9a659bb36b8bbe6831c13d428 I see more redundant loads elim'ed, but I do not see a performance difference with this change.