[PATCH] D37957: [TableGen] Some simple optimizations to TableGen execution time

Zachary Turner via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 19 14:43:03 PDT 2017


What is the right thing to do here?  Remove the pattern in .td, check for
empty before inserting into the StringSet, or something else?

On Tue, Sep 19, 2017 at 2:41 PM Krzysztof Parzyszek via Phabricator <
reviews at reviews.llvm.org> wrote:

> kparzysz added a comment.
>
> In https://reviews.llvm.org/D37957#875513, @zturner wrote:
>
> > Can you apply this patch Krzysztof and see if you can figure out what
> the right thing to do is with the empty `StringRef`?
>
>
> It's because of this pattern that doesn't have any named variables (i.e.
> all names of leaf values are empty):
> `(intrinsic_void 5755:{ *:[iPTR] }, ECX:{ *:[i32] }, EAX:{ *:[i32] },
> EBX:{ *:[i32] })`
>
> It corresponds to this pattern in .td, in case anyone's interested:
>
>   let Uses = [ ECX, EAX, EBX ] in {
>     def MWAITXrrr : I<0x01, MRM_FB, (outs), (ins), "mwaitx",
>                     [(int_x86_mwaitx ECX, EAX, EBX)], IIC_SSE_MWAITX>,
>                     TB, Requires<[ HasMWAITX ]>;
>   }
>
>
> https://reviews.llvm.org/D37957
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170919/7cabbeee/attachment.html>


More information about the llvm-commits mailing list