Upgrade LLVM to support ARM split stacks and unwinding

This branch fixes #5368 and #4489 and supersedes #5327. Since it's so difficult to complete LLVM upgrades and this isn't going to have much time to bake before 0.6 I want to hold off on merging it.