[PATCH] D74338: [RFC][TableGen] Support combining AssemblerPredicates with ORs

Sam Elliott via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 10 05:12:15 PDT 2020


lenary added inline comments.


================
Comment at: llvm/include/llvm/Target/Target.td:667
 
-  /// AssemblerCondString - Name of the subtarget feature being tested used
-  /// as alternative condition string used for assembler matcher.
-  /// e.g. "ModeThumb" is translated to "(Bits & ModeThumb) != 0".
-  ///      "!ModeThumb" is translated to "(Bits & ModeThumb) == 0".
-  /// It can also list multiple features separated by ",".
-  /// e.g. "ModeThumb,FeatureThumb2" is translated to
+  /// AssemblerCondDag - Set of subtarget features being tested used
+  /// as alternative condition string used for assembler matcher. Must be used
----------------
This should document that you cannot do `(any_of Pred1, (all_of Pred2, Pred3))`, but you can do:
```
def Pred23 = AssemblerPredicate<(all_of Pred2, Pred3)>;
... = AssemblerPredicate<(any_of Pred1, Pred23)>;
```


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D74338/new/

https://reviews.llvm.org/D74338





More information about the llvm-commits mailing list