[llvm-commits] [patch] Switch LTO to use MC
Chris Lattner
clattner at apple.com
Sat Feb 26 13:29:21 PST 2011
On Feb 25, 2011, at 8:17 AM, Rafael Avila de Espindola wrote:
>>> Doing llvm-link of all the IL files is about 3m if I remember
>>> correctly.
>>
>> Wow. Out of curiosity, is much of that time spent in type resolution
>> stuff? I expect that to disappear when the (post 2.9) type system
>> rewrite happens. I think we can make the "loading + linking" process
>> much faster :)
>
> Not sure. I did noticed that it looks like the merge is done two modules at a time with no state saved. It might be possible to save some time in there.
>
> Btw, I have seen the 3.0 planned type changes mentioned some times, but I don't know what they are in detail. Is there a doc somewhere?
I wrote them up and sent a link to llvmdev.
>> Aha, very nice. That should be possible by just reusing a
>> memorybuffer or something.
>
> Yes, I just need a way to represent MemoryBuffers that are not NULL terminated :-)
I agree that having null termination be optional would be useful. Clang really wants this (to make its lexer faster) but I don't think anyone else cares. I'd be fine with eliminating this requirement in the MemBuffer API and giving MemoryBuffer::getFileOrSTDIN a flags argument, where one flag would be "RequiresNullTerminatedBuffer" or something like that.
-Chris
More information about the llvm-commits
mailing list