In CodeGenFunction::EmitAArch64BuiltinExpr(), bulk move of all of the aarch64 MSVC-builtin cases to an earlier point in the function (the // Handle non-overloaded intrinsics first. switch block) in order to avoid an unreachable in GetNeonType(). The NEON type-overloading logic is not appropriate for the Windows builtins.
Fixes https://llvm.org/pr42775
I'm a little concerned about the overall code structure here; even if moving the code for the MSVC builtins is enough to fix those builtins specifically, is it actually impossible to hit this "default"? If it is, can we convert it to an "unreachable"?