[llvm-dev] Occasional TableGen Newsletter, no. 2

Philip Reames via llvm-dev llvm-dev at lists.llvm.org
Mon Nov 16 13:48:11 PST 2020


Thank you for the work here.  This is awesome to see.

Philip

On 11/16/20 12:30 PM, Paul C. Anagnostopoulos via llvm-dev wrote:
> This is the second in a series of occasional TableGen newsletters. The
> purpose is to inform the greater LLVM community of changes and enhancements
> to TableGen and its backends.
>
> * As announced previously, there are two new TableGen documents and three
> updated ones:
>
> TableGen Overview --- https://llvm.org/docs/TableGen/
> TableGen Programmer's Reference --- https://llvm.org/docs/TableGen/ProgRef.html
> TableGen Backends --- https://llvm.org/docs/TableGen/BackEnds.html
> TableGen Backend Developer's Guide --- https://llvm.org/docs/TableGen/BackGuide.html
> xxx-tblgen Command Guide --- https://llvm.org/docs/CommandGuide/tblgen.html
>
> * The boolean literals 'true' and 'false' were added to TableGen to improve
> the readability of the code.
>
> * The !sub bang operator was added to perform subtraction.
>
> * The !interleave operator was added to concatenate a list of strings with a
> delimiter between each item. This is simpler and faster than !foldl.
>
> * The !filter operator was added to filter a list of items based on a
> boolean predicate expression. This is simpler and faster than !foldl.
>
> * All six comparison operators now work on strings: !eq, !ne, !gt, !ge, !lt,
> !le.
>
> * The !eq and !ne operators now work on records. This eliminates many
> !cast<string> operations that were previously necessary.
>
> * A new frontend/backend timing capability was added to TableGen. See the
> "Backend Developer's Guide" for more information.
>
> * I'm working on an ongoing project to clean up the .td files and use the
> new features in them.
>
> * Coming soon: A faster -gen-dag-isel backend.
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev


More information about the llvm-dev mailing list