[llvm-commits] [llvm] r132451 - in /llvm/trunk: include/llvm/MC/MCInstPrinter.h lib/MC/MCAsmStreamer.cpp lib/MC/MCInstPrinter.cpp lib/Target/ARM/InstPrinter/ARMInstPrinter.cpp lib/Target/ARM/InstPrinter/ARMInstPrinter.h lib/Target/PowerPC/InstPrinter/PPCInstPrinter.cpp lib/Target/PowerPC/InstPrinter/PPCInstPrinter.h lib/Target/X86/InstPrinter/X86ATTInstPrinter.cpp lib/Target/X86/InstPrinter/X86ATTInstPrinter.h lib/Target/X86/InstPrinter/X86IntelInstPrinter.cpp lib/Target/X86/InstPrinter/X86IntelInstPrinter.h
Rafael Avila de Espindola
rafael.espindola at gmail.com
Thu Jun 2 11:09:59 PDT 2011
> That does raise another question, though. In looking at this, I
> noticed that in an old patch (121471), the TargetAsmInfo class was
> introduced and it contains a pointer to a TargetRegisterInfo. That's
> a layering problem, as it forces anything MC based to link in the
> entire codegen backend (TargetRegisterInfo is part of the
> MachineInstr layer). Can we find a better way to do this? Some
> tablegenerated helper functions, perhaps?
There was already a dependency, so TargetRegisterInfo looked like the
smaller hack at the time.
The reverse mapping is already tablegenerated and could be moved to MC.
Unfortunately, there is still information that is used in MC and Codegen
because of the old JIT. We could move it and break the MC -> CodeGen
dependency, but the idea of changing soon to be dead code is not too
attractive.
Another option is just duplicating some info in MC and CodeGen for now.
> -Jim
Cheers,
Rafael
More information about the llvm-commits
mailing list