[PATCH] D23559: [ADCE] Add control dependence computation

David Callahan via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 16 08:21:50 PDT 2016


david2050 created this revision.
david2050 added reviewers: mehdi_amini, nadav, majnemer.
david2050 added subscribers: llvm-commits, freik, twoh.

This is part of a serious of patches to evolve ADCE.cpp to support
removing of unnecessary control flow.

This patch adds the ability to compute control dependences using
the iterated dominance frontier. We extend the liveness propagation
to alternate between data and control dependences until convergences.

Modify the pass manager intergation to compute the post-dominator tree
needed for iterator dominance frontier.

We still force all terminators live for now until we add code to
handlinge removing control flow in a later patch.

No changes to effective behavior with this patch

Previous patches:

D23225 [ADCE] Modify data structures to support removing control flow
D23065 [ADCE] Refactor anticipating new functionality (NFC)
D23102 [ADCE] Refactoring for new functionality (NFC)

https://reviews.llvm.org/D23559

Files:
  lib/Transforms/Scalar/ADCE.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D23559.68185.patch
Type: text/x-patch
Size: 5234 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160816/11c928c6/attachment-0001.bin>


More information about the llvm-commits mailing list