[all-commits] [llvm/llvm-project] 96ea37: [PHIElimination] Compile time optimization for hu...
Jonas Paulsson via All-commits
all-commits at lists.llvm.org
Wed Feb 5 15:12:33 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: 96ea377ea4d6d8cb304a2f5ad69fd33fd1fade6f
https://github.com/llvm/llvm-project/commit/96ea377ea4d6d8cb304a2f5ad69fd33fd1fade6f
Author: Jonas Paulsson <paulsson at linux.vnet.ibm.com>
Date: 2020-02-05 (Wed, 05 Feb 2020)
Changed paths:
M llvm/include/llvm/CodeGen/LiveVariables.h
M llvm/include/llvm/CodeGen/MachineBasicBlock.h
M llvm/lib/CodeGen/LiveVariables.cpp
M llvm/lib/CodeGen/MachineBasicBlock.cpp
M llvm/lib/CodeGen/PHIElimination.cpp
Log Message:
-----------
[PHIElimination] Compile time optimization for huge functions.
This is a compile-time optimization for PHIElimination (splitting of critical
edges), which was reported at https://bugs.llvm.org/show_bug.cgi?id=44249. As
discussed there, the way to remedy the slowdowns with huge functions is to
pre-compute the live-in registers for each MBB in an efficient way in
PHIElimination.cpp and then pass that information along to
LiveVariabless::addNewBlock().
In all the huge test programs where this slowdown has been noticable, it has
dissapeared entirely with this patch.
Review: Björn Pettersson, Quentin Colombet.
Differential Revision: https://reviews.llvm.org/D73152
More information about the All-commits
mailing list