[Mono-dev] ir instructions.

Rodrigo Kumpera kumpera at gmail.com
Mon Feb 22 21:46:24 EST 2010


Later versions (as of > 2.6) of tablegen makes it easier to take it out of
LLVM and make it a standard alone tool.
We could even import it into our repository.


On Mon, Feb 22, 2010 at 11:36 PM, Zoltan Varga <vargaz at gmail.com> wrote:

> Hi,
>
> LLVM's tablegen is designed for exactly this purpose, to reduce repetition.
> It doesn't
> generate code in a general way, it has plugins which take the information
> from the .td files and generate code in any format they like, so it could be
> used for generating our cpu-<X>.h
> files for example, the same file, not some bloated version of it. Of
> course, using LLVM's
> tablegen would add a dependency, which is not desirable, but we could write
> our own parser
> which reads the same syntax, or a subset of it.
>
>                              Zoltan
>
>>
>> The last is to reduce the amount of repetition between instructions
>> definitions, it has to be very
>> template oriented and support customization of the result. For example, I
>> want to define a single
>> template for binary SIMD ops that produce reg_reg, reg_membase,
>> reg_memindex variants, which
>> don't have side effects and, finally, can be easily instantiated for the
>> many vector elements.
>>
>> This is asking for a lot. But it would simplify the JIT a lot and make it
>> produce better code easier.
>>
>> Rodrigo
>>
>> _______________________________________________
>> Mono-devel-list mailing list
>> Mono-devel-list at lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20100222/dec91033/attachment.html 


More information about the Mono-devel-list mailing list