[PATCH] D66562: [Attributor] Restrict liveness and return information to functions

Johannes Doerfert via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 21 15:06:09 PDT 2019


jdoerfert created this revision.
jdoerfert added reviewers: sstefan1, uenoku.
Herald added subscribers: bollu, hiraditya.
Herald added a project: LLVM.

Until we have proper call-site information we should not recompute
liveness and return information for each call site. This patch directly
uses the function versions and introduces TODOs at the usage sites.

The required iterations to get to the fixpoint are most of the time
reduced by this change and we always avoid work duplication.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D66562

Files:
  llvm/lib/Transforms/IPO/Attributor.cpp
  llvm/test/Transforms/FunctionAttrs/align.ll
  llvm/test/Transforms/FunctionAttrs/arg_returned.ll
  llvm/test/Transforms/FunctionAttrs/noalias_returned.ll
  llvm/test/Transforms/FunctionAttrs/nofree-attributor.ll
  llvm/test/Transforms/FunctionAttrs/nonnull.ll
  llvm/test/Transforms/FunctionAttrs/noreturn_async.ll
  llvm/test/Transforms/FunctionAttrs/read_write_returned_arguments_scc.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D66562.216494.patch
Type: text/x-patch
Size: 10046 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190821/9dd88241/attachment.bin>


More information about the llvm-commits mailing list