[all-commits] [llvm/llvm-project] 5cdc4f: [IROutliner] Deduplicating functions that only req...
Andrew Litteken via All-commits
all-commits at lists.llvm.org
Sat Dec 19 15:26:48 PST 2020
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 5cdc4f57e50bbe0d211c109517c17defe78e0b73
https://github.com/llvm/llvm-project/commit/5cdc4f57e50bbe0d211c109517c17defe78e0b73
Author: Andrew Litteken <andrew.litteken at gmail.com>
Date: 2020-12-19 (Sat, 19 Dec 2020)
Changed paths:
M llvm/include/llvm/Transforms/IPO/IROutliner.h
M llvm/lib/Transforms/IPO/IROutliner.cpp
M llvm/test/Transforms/IROutliner/extraction.ll
M llvm/test/Transforms/IROutliner/illegal-assumes.ll
M llvm/test/Transforms/IROutliner/illegal-branches.ll
M llvm/test/Transforms/IROutliner/illegal-callbr.ll
M llvm/test/Transforms/IROutliner/illegal-calls.ll
M llvm/test/Transforms/IROutliner/illegal-catchpad.ll
M llvm/test/Transforms/IROutliner/illegal-cleanup.ll
M llvm/test/Transforms/IROutliner/illegal-frozen.ll
M llvm/test/Transforms/IROutliner/illegal-gep.ll
M llvm/test/Transforms/IROutliner/illegal-invoke.ll
M llvm/test/Transforms/IROutliner/illegal-landingpad.ll
M llvm/test/Transforms/IROutliner/illegal-memset.ll
M llvm/test/Transforms/IROutliner/illegal-phi-nodes.ll
M llvm/test/Transforms/IROutliner/legal-debug.ll
M llvm/test/Transforms/IROutliner/outlining-address-taken.ll
M llvm/test/Transforms/IROutliner/outlining-different-constants.ll
M llvm/test/Transforms/IROutliner/outlining-different-structure.ll
M llvm/test/Transforms/IROutliner/outlining-same-constants.ll
M llvm/test/Transforms/IROutliner/outlining-same-globals.ll
Log Message:
-----------
[IROutliner] Deduplicating functions that only require inputs.
Extracted regions can have both inputs and outputs. In addition, the
CodeExtractor removes inputs that are only used in llvm.assumes, and
sunken allocas (values are used entirely in the extracted region as
denoted by lifetime intrinsics). We also cannot combine sections that
have different constants in the same structural location, and these
constants will have to elevated to argument. This patch deduplicates
extracted functions that only have inputs and non of the special cases.
We test that correctly deduplicate in:
test/Transforms/IROutliner/outlining-same-globals.ll
test/Transforms/IROutliner/outlining-same-constants.ll
test/Transforms/IROutliner/outlining-different-structure.ll
More information about the All-commits
mailing list