[PATCH] D106990: [IROutliner] Outlining branches with single entry and single exit
Andrew Litteken via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Jul 28 12:58:08 PDT 2021
AndrewLitteken created this revision.
AndrewLitteken added a reviewer: paquette.
Herald added subscribers: ormris, hiraditya.
AndrewLitteken requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.
Using the similarity found from the IRSimilarity Identifier, we take regions with structural similarity, and deduplicate them into a separate function. The Code Extractor is able to provide most of this functionality.
For simplicity, we start by only outlining regions with a single entry and single exit branch, this reduces the complexity in handling phi nodes outside the region, and handling many sets of outputs for each of the different exit blocks.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D106990
Files:
llvm/include/llvm/Analysis/IRSimilarityIdentifier.h
llvm/include/llvm/Transforms/IPO/IROutliner.h
llvm/lib/Analysis/IRSimilarityIdentifier.cpp
llvm/lib/Transforms/IPO/IROutliner.cpp
llvm/test/Transforms/IROutliner/outlining-across-branch.ll
llvm/test/Transforms/IROutliner/outlining-basic-branches.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D106990.362503.patch
Type: text/x-patch
Size: 24872 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210728/26328266/attachment.bin>
More information about the llvm-commits
mailing list