[PATCH] D103862: [Attributor] Simplify loads

Johannes Doerfert via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 7 17:00:50 PDT 2021


jdoerfert created this revision.
jdoerfert added reviewers: homerdin, kuter, sstefan1, uenoku, baziotis.
Herald added subscribers: ormris, okura, bollu, hiraditya.
jdoerfert requested review of this revision.
Herald added a subscriber: bbn.
Herald added a project: LLVM.

As a first step to simplify loads we only handle `null` and `undef`
underlying objects, as well as alloca instructions that have the load
as a single user. Loads of those values can be replaced by `undef`.
Proper reasoning is introduced in a follow up patch


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D103862

Files:
  llvm/lib/Transforms/IPO/AttributorAttributes.cpp
  llvm/test/Transforms/Attributor/ArgumentPromotion/2008-02-01-ReturnAttrs.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/X86/attributes.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/X86/min-legal-vector-width.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/alignment.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/attrs.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/basictest.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/byval-2.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/byval.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/crash.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/pr32917.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/profile.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/reserve-tbaa.ll
  llvm/test/Transforms/Attributor/ArgumentPromotion/sret.ll
  llvm/test/Transforms/Attributor/IPConstantProp/2009-09-24-byval-ptr.ll
  llvm/test/Transforms/Attributor/IPConstantProp/PR26044.ll
  llvm/test/Transforms/Attributor/IPConstantProp/dangling-block-address.ll
  llvm/test/Transforms/Attributor/internal-noalias.ll
  llvm/test/Transforms/Attributor/liveness.ll
  llvm/test/Transforms/Attributor/noalias.ll
  llvm/test/Transforms/Attributor/read_write_returned_arguments_scc.ll
  llvm/test/Transforms/Attributor/undefined_behavior.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D103862.350456.patch
Type: text/x-patch
Size: 50791 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210608/a4d02e5c/attachment.bin>


More information about the llvm-commits mailing list