What can we learn from JavaScriptCore moving from LLVM to a custom IR called B3? Lots: https://www.philipreames.com/Blog/2016/02/15/quick-thoughts-on-webkits-b3/