[all-commits] [llvm/llvm-project] 19b549: Port Swift's merge function pass to llvm: merging ...
Manman Ren via All-commits
all-commits at lists.llvm.org
Fri Nov 3 11:14:13 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 19b5495b653a00da7a250f48b4f739fcf2bbe82f
https://github.com/llvm/llvm-project/commit/19b5495b653a00da7a250f48b4f739fcf2bbe82f
Author: Manman Ren <manman.ren at gmail.com>
Date: 2023-11-03 (Fri, 03 Nov 2023)
Changed paths:
A llvm/include/llvm/Transforms/IPO/MergeFunctionsIgnoringConst.h
M llvm/include/llvm/Transforms/Utils/FunctionComparator.h
A llvm/include/llvm/Transforms/Utils/FunctionComparatorIgnoringConst.h
A llvm/include/llvm/Transforms/Utils/MergeFunctionsIgnoringConst.h
M llvm/lib/Passes/PassBuilder.cpp
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Passes/PassRegistry.def
M llvm/lib/Transforms/IPO/CMakeLists.txt
A llvm/lib/Transforms/IPO/MergeFunctionsIgnoringConst.cpp
M llvm/lib/Transforms/Utils/CMakeLists.txt
A llvm/lib/Transforms/Utils/FunctionComparatorIgnoringConst.cpp
A llvm/test/Transforms/MergeFuncIgnoringConst/merge_func.ll
A llvm/test/Transforms/MergeFuncIgnoringConst/merge_with_exception.ll
Log Message:
-----------
Port Swift's merge function pass to llvm: merging functions that differ in constants (#68235)
See RFC for details:
https://discourse.llvm.org/t/rfc-for-moving-swift-s-merge-function-pass-to-llvm/73778
We will need to refactor extension to FunctionComparator/FunctionHash to
StructuralHash. This patch adds a new pass which is ported from Swift,
and will need to discuss on how to migrate Swift’s pass over after we
land this in llvm.
Create this PR to get some early review on the patch.
---------
Co-authored-by: Manman Ren <mren at meta.com>
More information about the All-commits
mailing list