[PATCH] D74242: [CodeGenPrepare] Handle ExtractValueInst in dupRetToEnableTailCallOpts

Guozhi Wei via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Feb 7 10:54:18 PST 2020


Carrot created this revision.
Herald added subscribers: llvm-commits, hiraditya.
Herald added a project: LLVM.

As the test case shows if there is an ExtractValueInst in the Ret block, function dupRetToEnableTailCallOpts can't duplicate it into the block containing call. So later no tail call is generated in CodeGen.

This patch adds the ExtractValueInst handling code in function dupRetToEnableTailCallOpts and FoldReturnIntoUncondBranch, and later tail call can be generated for this case.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D74242

Files:
  llvm/lib/CodeGen/CodeGenPrepare.cpp
  llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
  llvm/test/CodeGen/X86/tailcall-extract.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D74242.243235.patch
Type: text/x-patch
Size: 3340 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200207/2f7e042f/attachment.bin>


More information about the llvm-commits mailing list