[PATCH] D46695: [RFC] [Patch 1/3] Add a new class of predicates for variant scheduling classes.

Andrea Di Biagio via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 21 02:56:15 PDT 2018


andreadb added inline comments.


================
Comment at: include/llvm/Target/TargetInstrPredicate.td:190
+// The signature for function `MCInstFn` is expected to be:
+//    `bool #MCinstFn(const MCInst &MI)`, or
+//    `bool #MCInstFn(const MCInst *MI)`.
----------------
javed.absar wrote:
> Hi Andrea. 
> This example/documentation up to this point was very clear. Thank you for that. But the '#CinstFn' is bit confusing. Maybe you could elaborate this one a bit.
> 
> Or may be its just me that's confused. 
The idea is that `MCInstFn` and `MachineInstrFn` are both function names.

`MCInstFn` is the name of a function that takes as input an MCInst (either by reference or pointer), and returns a bool.
`MachineInstrFn` is the name of a function that takes as input MachineInstr and returns a bool.

MCInstFn is used by the PredicateExpander when lowering checks on MCInst.
MachineInstrFn is used by the PredicateExpander when lowering checks on MachineInstr.

If the content of lines [189:194] is what confuses you, then I can remove it.

Thanks,
Andrea


https://reviews.llvm.org/D46695





More information about the llvm-commits mailing list