[LLVMdev] trig language-like code generator generator

Chris Lattner sabre at nondot.org
Sun Apr 24 13:09:12 CDT 2005


On Mon, 25 Apr 2005, Tzu-Chien Chiu wrote:
> http://portal.acm.org/citation.cfm?id=75700

Oh, tWig.  :)  Yes, tree pattern matching is exactly the direction we are 
heading.  We are slowly making the code generators more and more 
automatically generated as time goes on.  The SelectionDAG infrastructure 
is mean to support exactly this (perform Tree or DAG pattern matching on 
the optimized DAG instead of on the LLVM code).

This is described here:
http://llvm.cs.uiuc.edu/docs/CodeGenerator.html

Currently, we use simple greedy bottom-up matchers that are manually 
written in the <target>ISelPattern.cpp file.  The plan is to extend this 
by allowing targets to write the DAG pattern for each instruction in the 
.td files, then build use an optimal code generator generator to emit the 
matching code.

This processes of increased automation has been happening slowly over the 
years, but we've made good progress.  Are you interested in helping out?

-Chris

> On 4/25/05, Chris Lattner <sabre at nondot.org> wrote:
>> On Sun, 24 Apr 2005, Tzu-Chien Chiu wrote:
>>> i'd like to know if there is any plan or existing work to add a Aho's
>>> trig language like code generator generator?
>>
>> Trig is a code generator generator?  Is there any documentation for it
>> available anywhere?
>>
>> -Chris
>>
>>> "...If you are starting a new port, we recommend that you write the
>>> instruction selector using the SelectionDAG infrastructure."
>>>
>>> any other things i should know before i write one?
>>>
>>> thank you.
>>>
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>> http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev
>>>
>>
>> -Chris
>>
>> --
>> http://nondot.org/sabre/
>> http://llvm.cs.uiuc.edu/
>>
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://mail.cs.uiuc.edu/mailman/listinfo/llvmdev
>

-Chris

-- 
http://nondot.org/sabre/
http://llvm.cs.uiuc.edu/



More information about the LLVMdev mailing list