[LLVMdev] Tablegen question

Dan Gohman gohman at apple.com
Tue Jun 9 12:35:05 PDT 2009

On Jun 8, 2009, at 1:25 PM, Manjunath Kudlur wrote:

> Dan,
>> In general, it's a design goal to structure CodeGen features as
>> target-independent code parameterized with target-specific data.
>> The degree to which this goal is met in LLVM CodeGen features today
>> varies, but features that have been implemented using TableGen have
>> been relatively successful.
> Can you give an example of a relatively successful instance where
> Tablegen was used to implement something specific for a target?

All of the tablegen backends work this way. As you mentioned,
there are no target-specific tablegen backends at present.

The underlying observation here is that features are never
fundamentally "specific for a target". For example, a mapping
between vector opcodes and associated scalar opcodes could
reasonably be made on many architectures. Even
load-balancing between functional units on a processor is a
target-independent concept, with details like the number and
nature of the functional units being target-dependent.


More information about the llvm-dev mailing list