Remove bogus "fast path" in unroller branch update
authorJoseph Tremoulet <jotrem@microsoft.com>
Tue, 22 Nov 2016 16:59:29 +0000 (08:59 -0800)
committerJoseph Tremoulet <jotrem@microsoft.com>
Tue, 22 Nov 2016 17:07:51 +0000 (09:07 -0800)
commit9130174cbef365c84b48002d6899f3ea9ec55df4
treeabf9b7c8e4236585eb6f47f4cc199d76e94193b8
parentd4b1a7473dcaa7ed9ead85ce3ff0fb39e1d5059f
Remove bogus "fast path" in unroller branch update

BasicBlocks whose `bbJumpKind` doesn't make use of `bbJumpDest` may have
arbitrary garbage in their `bbJumpDest` field, so remove the code from
loop unrolling that was expecting such blocks to have null `bbJumpDest`s,
and instead always defer to the `optCopyBlkDest`/`optRedirectBlock`
helpers that check the jump kind before checking the jump dest.

Fixes #8231.
src/jit/optimizer.cpp
tests/src/JIT/Regression/JitBlue/GitHub_8231/GitHub_8231.cs [new file with mode: 0644]
tests/src/JIT/Regression/JitBlue/GitHub_8231/GitHub_8231.csproj [new file with mode: 0644]