upvote
MSVC can do this for x86 if the cases are densely packed and the default is blocked: https://gcc.godbolt.org/z/GPo9fMx8G

However, this optimization is less effective on modern CPUs with more powerful indirect predictors using global history.

reply
I believe that Rust does this which implies that it might be common to the clang back end.
reply
[flagged]
reply