[all-commits] [llvm/llvm-project] ee7188: [LoopInterchange] Correcting the profitability check

ram-NK via All-commits all-commits at lists.llvm.org
Mon Jan 16 11:36:49 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: ee7188c8b2ab06e740470cee368b137e0781958c
      https://github.com/llvm/llvm-project/commit/ee7188c8b2ab06e740470cee368b137e0781958c
  Author: Ram-NK <ramkrishnan.nk at huawei.com>
  Date:   2023-01-16 (Mon, 16 Jan 2023)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll
    M llvm/test/Transforms/LoopInterchange/perserve-lcssa.ll
    M llvm/test/Transforms/LoopInterchange/pr57148.ll
    M llvm/test/Transforms/LoopInterchange/profitability.ll

  Log Message:
  -----------
  [LoopInterchange] Correcting the profitability check

Before D135808, There would be endless loop interchange posibility (no
proper priority was there in profitability check. Any profitable check
may leads to loop-interchange). With this patch, there  is no endless
interchange (priority in profitable check is defined. Order of decision
is 'Cache cost' check, 'InstrOrderCost', 'Vectorization'). Corrected the
dependency checking inside isProfitableForVectorization(), corrected the
checking of bad order loops in isProfitablePerInstrOrderCost().

Reviewed By: Meinersbur, bmahjour, #loopoptwg

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




More information about the All-commits mailing list