[PATCH] D96992: [IR] Move willReturn() to Instruction

Nikita Popov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Feb 18 13:25:29 PST 2021


nikic created this revision.
nikic added reviewers: jdoerfert, fhahn.
Herald added subscribers: dexonsmith, hiraditya.
nikic requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

This moves the willReturn() helper from CallBase to Instruction, so that it can be used in a more generic manner. This will make it easier to fix additional passes (ADCE and BDCE), and will give us one place to change if additional instructions should become non-willreturn (e.g. there has been talk about handling volatile operations this way).

      

I have also included the IntrinsicInst workaround directly in here, so that it gets applied consistently. (As such this change is not entirely NFC -- FuncAttrs will now use this as well.)


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D96992

Files:
  llvm/include/llvm/IR/InstrTypes.h
  llvm/include/llvm/IR/Instruction.h
  llvm/lib/Analysis/ValueTracking.cpp
  llvm/lib/IR/Instruction.cpp
  llvm/lib/Transforms/IPO/FunctionAttrs.cpp
  llvm/lib/Transforms/Utils/Local.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D96992.324754.patch
Type: text/x-patch
Size: 4589 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210218/9bd1154c/attachment.bin>


More information about the llvm-commits mailing list