[all-commits] [llvm/llvm-project] c91597: [LV] Reland "Update logic for calculating register...

sushgokh via All-commits all-commits at lists.llvm.org
Fri Mar 3 23:57:00 PST 2023


  Branch: refs/heads/release/16.x
  Home:   https://github.com/llvm/llvm-project
  Commit: c915974bd3b209ca11ce94856088d72517d3866f
      https://github.com/llvm/llvm-project/commit/c915974bd3b209ca11ce94856088d72517d3866f
  Author: sgokhale <sgokhale at nvidia.com>
  Date:   2023-03-03 (Fri, 03 Mar 2023)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/X86/reg-usage-debug.ll

  Log Message:
  -----------
  [LV] Reland "Update logic for calculating register usage due to invariants"

Previously, while calculating register usage due to invariants, it was assumed that invariant would always be part of widening
instructions. This resulted in calculating vector register types for vectors which cant be legalized(check the newly added test for more details).

An invariant might not always need a vector register. For e.g., invariant might just be used for iteration check.

This patch checks if the invariant is part of any widening instruction and considers register usage accordingly. Fixes issue 60493

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

(cherry picked from commit 4f9a5447c633083e99fd5cb448116fa8e5b1f976)


  Commit: b4217ad55fce70f32b6ec9e96e8fa8cfdbc69651
      https://github.com/llvm/llvm-project/commit/b4217ad55fce70f32b6ec9e96e8fa8cfdbc69651
  Author: sgokhale <sgokhale at nvidia.com>
  Date:   2023-03-03 (Fri, 03 Mar 2023)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/reg-usage.ll

  Log Message:
  -----------
  [LV] Modify test case for commit 4f9a544

Was observing test failure. Relanding the test

(cherry picked from commit 0ec4cae146e37d97f39818d89e4f2209dcde38ee)


  Commit: 4b4dfa341b8d16b01ee0d83dc5cf5ddcc1a6cacf
      https://github.com/llvm/llvm-project/commit/4b4dfa341b8d16b01ee0d83dc5cf5ddcc1a6cacf
  Author: sgokhale <sgokhale at nvidia.com>
  Date:   2023-03-03 (Fri, 03 Mar 2023)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/reg-usage.ll

  Log Message:
  -----------
  [LV] Reland testcase in 0ec4cae

(cherry picked from commit ac67ec3a5433e2859634dae4cb2a7e94f50695f8)


Compare: https://github.com/llvm/llvm-project/compare/f5f4825b189c...4b4dfa341b8d


More information about the All-commits mailing list