[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.

Dan




More information about the llvm-dev mailing list