================ @@ -2174,23 +2129,40 @@ let mayStore = true in { []>; } -let isCall=1 in { - multiclass CALL<string OpcStr, SDNode OpNode> { - def PrintCallNoRetInst : NVPTXInst<(outs), (ins), - OpcStr # " ", [(OpNode 0)]>; - def PrintCallRetInst1 : NVPTXInst<(outs), (ins), - OpcStr # " (retval0), ", [(OpNode 1)]>; +/// CALL(Chain, IsConvergent, IsIndirectCall/IsUniform, NumReturns, +/// NumParams, Callee, Proto, InGlue) + +def CallOperand : Operand<i32> { let PrintMethod = "printCallOperand"; } + +foreach is_convergent = [0, 1] in { + defvar convergent_suffix = !if(is_convergent, "_conv", ""); + + let isCall = 1, isConvergent = is_convergent in { + def CALL # convergent_suffix : + NVPTXInst<(outs), (ins ADDR_base:$addr, CallOperand:$rets, CallOperand:$params, i32imm:$proto), ---------------- AlexMaclean wrote:
Done https://github.com/llvm/llvm-project/pull/145581 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits