[LLVMdev] TargetParser - Always build all table-gen files?

Renato Golin renato.golin at linaro.org
Tue Mar 10 10:07:31 PDT 2015

On 10 March 2015 at 16:20, Mehdi Amini <mehdi.amini at apple.com> wrote:
> I’d like to avoid as much as possible adding compilation time to the process unless it is necessary (I’m not saying it does not worth it here).

As I said in the review, it may end up being faster, because of the
amount of crap we'll remove from all tools and LLVM.

> It is not clear to me why do you need to generate *all* the table-gen files and not only the one related to target features?

I don't know which of them yet, but I'll certainly need CPU/FPU/ARCH
names, register names, feature names and anything to populate a target
description object.

I moved them all into the include file because I didn't want to have
to choose now and get it wrong. I realise that this might not have
been the best course of action.

Having said that, we can always go back. So, I'm open to suggestions.
I could start with only a few per arch, and then add as we see fit. My
guess is that only ARMGenRegisterInfo.inc and ARMGenSubtargetInfo.inc
would be a good start, with possibly ARMGenCallingConv.inc and
ARMGenInstrInfo.inc being the next ones to add for Clang's benefit.

That would mean separating the calls to tablegen() between
CMakeLists.txt and CMakeTblgen.txt, but that's ok.


More information about the llvm-dev mailing list