[all-commits] [llvm/llvm-project] 915310: Revert "[DSE] Switch to MemorySSA-backed DSE by de...

Florian Hahn via All-commits all-commits at lists.llvm.org
Sat Sep 26 10:36:35 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 915310bf14cbac58a81fd60e0fa9dc8d341108e2
      https://github.com/llvm/llvm-project/commit/915310bf14cbac58a81fd60e0fa9dc8d341108e2
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2020-09-26 (Sat, 26 Sep 2020)

  Changed paths:
    M clang/test/CodeGen/thinlto-distributed-newpm.ll
    M clang/test/CodeGenObjC/exceptions.m
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/test/Analysis/BasicAA/modref.ll
    M llvm/test/CodeGen/AMDGPU/opt-pipeline.ll
    M llvm/test/Other/new-pm-defaults.ll
    M llvm/test/Other/new-pm-lto-defaults.ll
    M llvm/test/Other/new-pm-thinlto-defaults.ll
    M llvm/test/Other/opt-O2-pipeline.ll
    M llvm/test/Other/opt-O3-pipeline-enable-matrix.ll
    M llvm/test/Other/opt-O3-pipeline.ll
    M llvm/test/Other/opt-Os-pipeline.ll
    M llvm/test/Transforms/Coroutines/ArgAddr.ll
    M llvm/test/Transforms/Coroutines/coro-retcon.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/2011-03-25-DSEMiscompile.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/2011-09-06-EndOfFunction.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/2011-09-06-MemCpy.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/2016-07-17-UseAfterFree.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/OverwriteStoreBegin.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/OverwriteStoreEnd.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/PartialStore.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/PartialStore2.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/X86/gather-null-pointer.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/atomic-overlapping.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/atomic-todo.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/atomic.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/calloc-store.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/combined-partial-overwrites.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/const-pointers.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/crash.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/cs-cs-aliasing.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/debug-counter.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/debuginfo.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/dominate.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/fence-todo.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/fence.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/free.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/inst-limits.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/int_sideeffect.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/invariant.start.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/launder.invariant.group.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/libcalls.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/lifetime.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/mda-with-dbg-values.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/memcpy-complete-overwrite.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/memintrinsics.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/memoryssa-scan-limit.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/memset-and-memcpy.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/memset-missing-debugloc.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/memset-unknown-sizes.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/merge-stores-big-endian.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/merge-stores.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-captures.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-exceptions.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-loops.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-malloc-free.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-memintrinsics.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-memoryphis.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-multipath-throwing.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-multipath.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-overlap.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-partial.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-simple.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-throwing.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-unreachable.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/no-targetdata.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/noop-stores.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/operand-bundles.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/overlap.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/pr11390.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/pr47285-not-overwritten-on-all-exit-paths.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/simple-preservation.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/simple-todo.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/simple.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/stats.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/tail-byval.ll
    M llvm/test/Transforms/MemCpyOpt/memcpy.ll
    M llvm/test/Transforms/PhaseOrdering/X86/SROA-after-loop-unrolling.ll

  Log Message:
  -----------
  Revert "[DSE] Switch to MemorySSA-backed DSE by default."

There appears to be a mis-compile with MemorySSA-backed DSE in
combination with llvm.lifetime.end. It currently appears like
DSE is doing the right thing and the llvm.lifetime.end markers
are incorrect. The reverted patch uncovers the mis-compile.

This patch temporarily switches back to the legacy DSE
implementation, while we investigate.

This reverts commit 9d172c8e9c845a36b61dc12c27de8acdbef8b247.




More information about the All-commits mailing list