| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[mlir] Replace LLVM_ATTRIBUTE_UNUSED with [[maybe_unused]] (NFC) (#163703) This patch replaces LLVM_ATTRIBUTE_UNUSED with [[maybe_unused]], introduced as part of C++17. | 10 个月前 | |
[MLIR][PDL] Add PDLL support for negated native constraints This commit enables the expression of negated native constraints in PDLL: If a constraint is prefixed with "not" it is parsed as a negated constraint and hence the attribute isNegated of the emitted pdl.apply_native_constraint operation is set to true. In first instance this is only supported for the calling of external native C++ constraints and generation of PDL patterns. Previously, negating a native constraint would have been handled by creating an additional native call, e.g. PDLL Constraint checkA(input: Attr); Constarint checkNotA(input: Attr); or by including an explicit additional operand for negation, e.g. Constraint checkA(input: Attr, negated: Attr); With this a constraint can simply be negated by prefixing it with not. e.g. PDLL Constraint simpleConstraint(op: Op); Pattern example { let inputOp = op<test.bar>() ->(type: Type); let root = op<test.foo>(inputOp.0) -> (); not simpleConstraint(inputOp); simpleConstraint(root); erase root; } Depends on [[ https://reviews.llvm.org/D153871 | D153871 ]] Reviewed By: Mogball Differential Revision: https://reviews.llvm.org/D153959 | 2 年前 |