================ @@ -5112,7 +5112,7 @@ RValue CodeGenFunction::EmitCall(const CGFunctionInfo &CallInfo, RawAddress SRetAlloca = RawAddress::invalid(); llvm::Value *UnusedReturnSizePtr = nullptr; if (RetAI.isIndirect() || RetAI.isInAlloca() || RetAI.isCoerceAndExpand()) { - if (IsVirtualFunctionPointerThunk && RetAI.isIndirect()) { + if ((IsVirtualFunctionPointerThunk && RetAI.isIndirect()) || IsMustTail) { ---------------- ostannard wrote:
I think `isIndirect()` is the only case needed for `IsMustTail`, so I'll change the code to limit it to that, matching the `IsVirtualFunctionPointerThunk` check. https://github.com/llvm/llvm-project/pull/109943 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits