[PATCH] D46221: [RISCV] Implement MC layer support for the tail pseudoinstruction

Mandeep Singh Grang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon May 14 13:11:06 PDT 2018


mgrang added inline comments.


================
Comment at: lib/Target/RISCV/RISCVInstrInfo.td:664
+let isCall = 1, isTerminator = 1, isReturn = 1, isBarrier = 1, Uses = [X2],
+    hasSideEffects = 0, mayLoad = 0, mayStore = 0, isCodeGenOnly = 0 in
+def PseudoTAIL : Pseudo<(outs), (ins bare_symbol:$dst), []> {
----------------
If I remove the definition for the Tail node then it cannot determine hasSideEfects, mayStore and mayLoad properties:

```
def Tail         : SDNode<"RISCVISD::TAIL", SDT_RISCVCall,
                          [SDNPHasChain, SDNPOptInGlue, SDNPOutGlue,
                           SDNPVariadic]>;
```
So I had to explicitly specify them here. We can remove these in the next patch which includes the definition for Tail.



https://reviews.llvm.org/D46221





More information about the llvm-commits mailing list