[all-commits] [llvm/llvm-project] 80970a: [DSE, MSSA] Eliminate stores by terminators (free, l...

Florian Hahn via All-commits all-commits at lists.llvm.org
Wed Jul 8 01:00:09 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 80970ac87574c6d0292894a4a912fa512336f434
      https://github.com/llvm/llvm-project/commit/80970ac87574c6d0292894a4a912fa512336f434
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2020-07-08 (Wed, 08 Jul 2020)

  Changed paths:
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/test/Transforms/DeadStoreElimination/MSSA/2016-07-17-UseAfterFree.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/free.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/lifetime.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/memset-missing-debugloc.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-captures.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/multiblock-malloc-free.ll
    M llvm/test/Transforms/DeadStoreElimination/MSSA/simple.ll

  Log Message:
  -----------
  [DSE,MSSA] Eliminate stores by terminators (free,lifetime.end).

This patch adds support for eliminating stores by free & lifetime.end
calls. We can remove stores that are not read before calling a memory
terminator and we can eliminate all stores after a memory terminator
until we see a new lifetime.start. The second case seems to not really
trigger much in practice though.

Reviewers: dmgreen, rnk, efriedma, bryant, asbirlea, Tyker

Reviewed By: asbirlea

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




More information about the All-commits mailing list