I'm really interested to discuss the problem of running LLVM multiple times on the same function in order to guide later tries. In looking at things briefly earlier, it seemed that this was safe to do as long as you didn't let asm printer get called on the result. I.e. you could throw early results away with impunity. It seems that by precompiling a function to get some information about it, some more intelligent global optimization could be done. For example, even something like register scavenger could be avoided if you knew in advance the requirements . All the needed stack space could be allocated earlier during local variable placement. I'm not sure who will be there that is knowledgeable about this and would like to discuss this with me. We have several applications for this already for the Mips port that would benefit from this. Also, I would like to discuss the idea of having a module level pass for things like constant islands so that the whole module can be considered at once. This might be better done by just have a module level store and keeping the current structure. Anyway; these are some things I would like to discuss. Discussion on email is fine too but with everyone there we can resolve things more quickly. I was able to save a huge amount of time last year during the hackers lab by meeting with Bill Wendling and other that were working on future things that I was able to use for Mips16 and avoided lots of duplicated and/or misspent effort.