[all-commits] [llvm/llvm-project] 778b45: [LAA] Add Memory dependence remarks.

malJaj via All-commits all-commits at lists.llvm.org
Wed Feb 2 04:08:20 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 778b455dd66056400d7927cae5a6e890453278a7
      https://github.com/llvm/llvm-project/commit/778b455dd66056400d7927cae5a6e890453278a7
  Author: Malhar Jajoo <malhar.jajoo at arm.com>
  Date:   2022-02-02 (Wed, 02 Feb 2022)

  Changed paths:
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/test/Analysis/LoopAccessAnalysis/depend_diff_types.ll
    M llvm/test/Analysis/LoopAccessAnalysis/pointer-phis.ll
    M llvm/test/Analysis/LoopAccessAnalysis/pointer-with-unknown-bounds.ll
    M llvm/test/Analysis/LoopAccessAnalysis/stride-access-dependence.ll
    M llvm/test/Analysis/LoopAccessAnalysis/symbolic-stride.ll
    M llvm/test/Analysis/LoopAccessAnalysis/underlying-objects-2.ll
    M llvm/test/Analysis/LoopAccessAnalysis/unsafe-and-rt-checks.ll
    M llvm/test/Transforms/LoopVectorize/diag-with-hotness-info-2.ll
    A llvm/test/Transforms/LoopVectorize/memory-dep-remarks.ll
    M llvm/test/Transforms/LoopVectorize/unsafe-dep-remark.ll

  Log Message:
  -----------
  [LAA] Add Memory dependence remarks.

Adds new optimization remarks when vectorization fails.

More specifically, new remarks are added for following 4 cases:

- Backward dependency
- Backward dependency that prevents Store-to-load forwarding
- Forward dependency that prevents Store-to-load forwarding
- Unknown dependency

It is important to note that only one of the sources
of failures (to vectorize) is reported by the remarks.
This source of failure may not be first in program order.

A regression test has been added to test the following cases:

a) Loop can be vectorized: No optimization remark is emitted
b) Loop can not be vectorized: In this case an optimization
remark will be emitted for one source of failure.

Reviewed By: sdesmalen, david-arm

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




More information about the All-commits mailing list