[llvm-dev] Managed Languages BOF @ Dev Meeting
Chris Lattner via llvm-dev
llvm-dev at lists.llvm.org
Sun Oct 18 09:22:39 PDT 2015
On Oct 16, 2015, at 1:27 PM, Joe Ranieri via llvm-dev <llvm-dev at lists.llvm.org> wrote:
> I'm planning on attending. You've mentioned some of these, but
> specific topics of interest for me include:
> - Dealing with the explosion of basic blocks that come up with
> languages where almost every function call, implicit and explicit, can
> raise exceptions.
I saw this come up in a recent discussion about LLILC. One simple way to do this is to introduce a new intrinsic, like “llvm.nullcheck(x)” which symbolically represents the null check and bail out in one instruction - instead of the fully elaborated basic block representation (which slows everything down by increasing the height of the CFG). These null checks can be optimized away through standard techniques, and any remaining ones expanded out to LLVM IR before codegen, or as part of lowering to MachineInstrs.
More information about the llvm-dev