[PATCH] Switch lowering: extract jump tables and bit tests before building binary tree (PR22262)

Hans Wennborg hans at chromium.org
Thu Apr 23 12:33:16 PDT 2015

Hi Andy,

What revision are you using?

There was a bug with iterators going out-of-bounds in that code, Aaron
reverted in r235597, and I recommitted with a fix in r235608.

 - Hans

On Thu, Apr 23, 2015 at 12:27 PM, Andy Ayers <andya at microsoft.com> wrote:
> I think we're hitting an issue with this. Not 100% sure yet. Will try to get you something to test out but it will take some time.
> We have a switch with cases 0...16. It gets put as a one-cluster jump table. Then we get an iterator out of bounds error in SelectionDagBuilder @7671 when trying to re-arrange case blocks since there's nothing to rearrange. Seems like this rearrangement code path could be avoided unless there are multiple clusters.
>   rL LLVM
> http://reviews.llvm.org/D8649
>   http://reviews.llvm.org/settings/panel/emailpreferences/

More information about the llvm-commits mailing list