[PATCH] D89331: [TableGen] Add the !not and !xor operators.

Paul C. Anagnostopoulos via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 13 10:23:10 PDT 2020


Paul-C-Anagnostopoulos created this revision.
Paul-C-Anagnostopoulos added reviewers: lattner, madhur13490, SuJunda, nhaehnle.
Herald added subscribers: llvm-commits, hiraditya.
Herald added a project: LLVM.
Paul-C-Anagnostopoulos requested review of this revision.

This patch adds two new bang operators. !not produces the logical not of its argument. Using this clarifies code such as

  !if(!eq(bool, 0), ...  --versus--  !if(!not(bool), ...

The !xor operator completes the usual complement of three bitwise operators.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D89331

Files:
  llvm/include/llvm/TableGen/Record.h
  llvm/lib/TableGen/Record.cpp
  llvm/lib/TableGen/TGLexer.cpp
  llvm/lib/TableGen/TGLexer.h
  llvm/lib/TableGen/TGParser.cpp
  llvm/test/TableGen/arithmetic.td
  llvm/test/TableGen/if.td
  llvm/test/TableGen/math.td

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D89331.297902.patch
Type: text/x-patch
Size: 8896 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20201013/a272118d/attachment.bin>


More information about the llvm-commits mailing list