[PATCH] D66914: [Attributor] Look at internal functions only on-demand
    Johannes Doerfert via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Thu Aug 29 06:02:36 PDT 2019
    
    
  
jdoerfert marked 2 inline comments as done.
jdoerfert added inline comments.
================
Comment at: llvm/lib/Transforms/IPO/Attributor.cpp:144-155
+struct AADummy : public StateWrapper<BooleanState, AbstractAttribute>,
+                 public IRPosition {
+  AADummy(const IRPosition &IRP) : IRPosition(IRP) {}
+  IRPosition &getIRPosition() override { return *this; }
+  const IRPosition &getIRPosition() const override { return *this; }
+  const std::string getAsStr() const override { return ""; }
+  void trackStatistics() const override {}
----------------
uenoku wrote:
> Is `AADummy` used in this patch? What is the purpose?
It was, then I removed the use -.-, will remove the dummy AA as well. Was used as QueryingAA but no need anymore.
================
Comment at: llvm/test/Transforms/FunctionAttrs/align.ll:1
-; RUN: opt -attributor -attributor-disable=false -attributor-max-iterations-verify -attributor-max-iterations=6 -S < %s | FileCheck %s --check-prefix=ATTRIBUTOR
+; RUN: opt -attributor -attributor-disable=false -attributor-max-iterations-verify -attributor-max-iterations=7 -S < %s | FileCheck %s --check-prefix=ATTRIBUTOR
 
----------------
uenoku wrote:
> Why does max-iterations increase? 
Because we look at internal functions later. That should not increase the overall time spend or number of total updates. Once these patches are through I'll also add a test I distilled from a benchmark to verify we keep a low number of iterations in an actual "corner case" that exists.
Repository:
  rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D66914/new/
https://reviews.llvm.org/D66914
    
    
More information about the llvm-commits
mailing list