[all-commits] [llvm/llvm-project] 7c3e2b: [RewriteStatepointsForGC] Fix an incorrect assertion

Daniil Suchkov via All-commits all-commits at lists.llvm.org
Thu Feb 17 10:45:44 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 7c3e2b92cf66fd7cf84e59e10fb911d0887c5788
      https://github.com/llvm/llvm-project/commit/7c3e2b92cf66fd7cf84e59e10fb911d0887c5788
  Author: Daniil Suchkov <dsuchkov at azul.com>
  Date:   2022-02-17 (Thu, 17 Feb 2022)

  Changed paths:
    M llvm/lib/Transforms/Scalar/RewriteStatepointsForGC.cpp
    M llvm/test/Transforms/RewriteStatepointsForGC/phi-vector-bitcast.ll

  Log Message:
  -----------
  [RewriteStatepointsForGC] Fix an incorrect assertion

The assertion verifying that a newly computed value matches what is
already cached used stripPointerCasts() to strip bitcasts, however the
values can be not only pointers, but also vectors of pointers. That is
problematic because stripPointerCasts() doesn't handle vectors of
pointers. This patch introduces an ad-hoc utility function to strip all
bitcasts regardless of the value type.

Reviewed By: skatkov, reames

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




More information about the All-commits mailing list