[llvm-dev] [RFC] Tablegen-erated GlobalISel Combine Rules

Daniel Sanders via llvm-dev llvm-dev at lists.llvm.org
Thu Nov 29 12:42:56 PST 2018



> On Nov 28, 2018, at 14:56, Quentin Colombet <quentin.colombet at gmail.com> wrote:
> 
> Le mer. 28 nov. 2018 à 11:41, David Greene <dag at cray.com <mailto:dag at cray.com>> a écrit :
>> 
>> Quentin Colombet <quentin.colombet at gmail.com> writes:
>> 
>>>    And are there any realistic alternatives for declarative
>>>    representations combines?
>>> 
>>> Realistic I would have thought we can use the syntax we already have
>>> for SDISel.
>>> In other words, people wouldn’t have to learn yet another way of doing
>>> combines and when we are ready we can move everything (isel +
>>> combines) in one go.
>> 
>> I don't think I'd want to see things go that way.  Current SDISel
>> patterns are very limited and impose a lot of hacky workarounds for
>> not-too-uncommon things.  If anything, I anticipate migrating isel to
>> what Daniel outlines rather than migrating combine to SDISel and then
>> migrating to yet another thing after that.
> 
> Interesting, I wasn't seeing this that way (the porting combine to SDISel bit).
> 
> The advantage I was seeing in reusing what we have is that ISel and
> combines are fundamentally the same problem and any improvement (in
> particular compile time) that we would have made to the existing
> matching state machine would have benefited everything. One thing I
> assumed from this proposal is that the new syntax would imply a new
> matching state machine and thus fragmented our effort.

It's definitely going to require some changes to that state machine but the intent is to have both use the same core.

> Again maybe that's a good thing (get rid of the past to better prepare
> the future), and maybe I misread the proposal and we actually reuse
> the same state machine and we are just discussing syntactic sugar.
> Point being, feel free to move as you see fit and take my comments as
> they are, a single person's opinion :).
> 
> Cheers,
> Q.
> 
>> 
>>                        -David

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20181129/3a482715/attachment.html>


More information about the llvm-dev mailing list