[all-commits] [llvm/llvm-project] c1803d: [FunctionAttrs] Unconditionally perform argument a...

Changpeng Fang via All-commits all-commits at lists.llvm.org
Wed Aug 9 17:50:34 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c1803d5366c794ecade4e4ccd0013690a1976d49
      https://github.com/llvm/llvm-project/commit/c1803d5366c794ecade4e4ccd0013690a1976d49
  Author: Changpeng Fang <changpeng.fang at amd.com>
  Date:   2023-08-09 (Wed, 09 Aug 2023)

  Changed paths:
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/test/Other/new-pm-print-pipeline.ll
    M llvm/test/Transforms/InstCombine/unused-nonnull.ll
    A llvm/test/Transforms/PhaseOrdering/early-arg-attrs-inference.ll

  Log Message:
  -----------
  [FunctionAttrs] Unconditionally perform argument attribute inference in the first function-attrs pass

Summary:
  Argument attributes like NoAlias and ReadOnly could affect memoryssa and thus earlyCSE in the function simplification pipeline.
https://reviews.llvm.org/D145210 adjusted PostOrderFunctionAttrs placement and caused the argument attributes not referred for the use
in the pipeline. This work (initiated by @nikic) unconditionally performs argument attribute inference in the first function-attrs pass.

Reviewers:
  aeubanks and nikic

Differential Revision:
  https://reviews.llvm.org/D156397




More information about the All-commits mailing list