[all-commits] [llvm/llvm-project] be7c85: [CodeGenPrepare] Fix for using outdated/corrupt Lo...

Momchil Velikov via All-commits all-commits at lists.llvm.org
Mon Jun 19 01:43:22 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: be7c859b02306338d829a2f43ab72a6ee7e2faf9
      https://github.com/llvm/llvm-project/commit/be7c859b02306338d829a2f43ab72a6ee7e2faf9
  Author: Momchil Velikov <momchil.velikov at arm.com>
  Date:   2023-06-19 (Mon, 19 Jun 2023)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp

  Log Message:
  -----------
  [CodeGenPrepare] Fix for using outdated/corrupt LoopInfo

Some transformation in CodeGenPrepare pass may create and/or delete
basic block, but they don't update the LoopInfo, so the LoopInfo may
end up containing dangling pointers and sometimes reused basic blocks,
which leads to "interesting" non-deterministic behaviour.

These transformations do not seem to alter the loop structure of the
function, and updating the loop info is quite straighforward.

Reviewed By: efriedma

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

Change-Id: If8ab3905749ea6be94fbbacd54c5cfab5bc1fba1




More information about the All-commits mailing list