[all-commits] [llvm/llvm-project] b8a2b6: Revert "[IROutliner] Deduplicating functions that ...

Andrew Litteken via All-commits all-commits at lists.llvm.org
Sat Dec 19 15:39:37 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: b8a2b6af374e9dca3ad320fcffd8798c0170801f
      https://github.com/llvm/llvm-project/commit/b8a2b6af374e9dca3ad320fcffd8798c0170801f
  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:
  -----------
  Revert "[IROutliner] Deduplicating functions that only require inputs."

Missing reviewers and differential revision in commit message.

This reverts commit 5cdc4f57e50bbe0d211c109517c17defe78e0b73.


  Commit: 7c6f28a438b59dea11a7fc2562b3389874c58112
      https://github.com/llvm/llvm-project/commit/7c6f28a438b59dea11a7fc2562b3389874c58112
  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

Reviewers: jroelofs, paquette

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


Compare: https://github.com/llvm/llvm-project/compare/5cdc4f57e50b...7c6f28a438b5


More information about the All-commits mailing list