[PATCH] D52803: [GISel]: Add support for CSEing continuously during GISel passes
Aditya Nandakumar via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 7 15:40:46 PST 2019
aditya_nandakumar updated this revision to Diff 180580.
aditya_nandakumar marked an inline comment as done.
aditya_nandakumar added a comment.
Herald added subscribers: atanasyan, jrtc27, sdardis.
Rebased, and updated to the new MachineIRBuilder interface.
By default the CSE is enabled during IRTranslator and Legalizer now (disable with -enable-cse-in-legalizer/irtranslator=0).
Added a helper class called GISelObserverWrapper which provides a single observer that can call several observers which can be used to register as the delegate to MachineFunction.
I've also updated most tests (except some tests where it's not obvious what the test is doing where CSE is disabled).
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D52803/new/
https://reviews.llvm.org/D52803
Files:
include/llvm/CodeGen/GlobalISel/CSEInfo.h
include/llvm/CodeGen/GlobalISel/CSEMIRBuilder.h
include/llvm/CodeGen/GlobalISel/Combiner.h
include/llvm/CodeGen/GlobalISel/ConstantFoldingMIRBuilder.h
include/llvm/CodeGen/GlobalISel/GISelChangeObserver.h
include/llvm/CodeGen/GlobalISel/GISelWorkList.h
include/llvm/CodeGen/GlobalISel/IRTranslator.h
include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
include/llvm/CodeGen/GlobalISel/MachineIRBuilder.h
include/llvm/CodeGen/GlobalISel/Utils.h
include/llvm/CodeGen/MachineFunction.h
include/llvm/InitializePasses.h
include/llvm/Support/LowLevelTypeImpl.h
lib/CodeGen/GlobalISel/CMakeLists.txt
lib/CodeGen/GlobalISel/CSEInfo.cpp
lib/CodeGen/GlobalISel/CSEMIRBuilder.cpp
lib/CodeGen/GlobalISel/Combiner.cpp
lib/CodeGen/GlobalISel/GISelChangeObserver.cpp
lib/CodeGen/GlobalISel/IRTranslator.cpp
lib/CodeGen/GlobalISel/Legalizer.cpp
lib/CodeGen/GlobalISel/LegalizerHelper.cpp
lib/CodeGen/GlobalISel/MachineIRBuilder.cpp
lib/CodeGen/GlobalISel/Utils.cpp
lib/CodeGen/MachineFunction.cpp
lib/Target/AArch64/AArch64PreLegalizerCombiner.cpp
test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
test/CodeGen/AArch64/GlobalISel/call-translator-ios.ll
test/CodeGen/AArch64/GlobalISel/call-translator.ll
test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll
test/CodeGen/AArch64/GlobalISel/legalize-cmp.mir
test/CodeGen/AArch64/GlobalISel/legalize-div.mir
test/CodeGen/AArch64/GlobalISel/legalize-ext.mir
test/CodeGen/AArch64/GlobalISel/legalize-load-store-fewerElts.mir
test/CodeGen/AArch64/GlobalISel/legalize-load-store-s128-unaligned.mir
test/CodeGen/AArch64/GlobalISel/legalize-load-store.mir
test/CodeGen/AArch64/GlobalISel/legalize-phi.mir
test/CodeGen/AArch64/GlobalISel/legalize-rem.mir
test/CodeGen/AArch64/GlobalISel/legalize-shift.mir
test/CodeGen/AArch64/GlobalISel/legalize-simple.mir
test/CodeGen/AArch64/GlobalISel/legalize-vaarg.mir
test/CodeGen/AArch64/GlobalISel/translate-constant-dag.ll
test/CodeGen/AArch64/O0-pipeline.ll
test/CodeGen/ARM/GlobalISel/arm-legalize-bitcounts.mir
test/CodeGen/ARM/GlobalISel/arm-legalize-divmod.mir
test/CodeGen/ARM/GlobalISel/arm-legalize-fp.mir
test/CodeGen/ARM/GlobalISel/arm-param-lowering.ll
test/CodeGen/Mips/GlobalISel/legalizer/add.mir
test/CodeGen/Mips/GlobalISel/legalizer/rem_and_div.mir
test/CodeGen/Mips/GlobalISel/llvm-ir/add.ll
test/CodeGen/Mips/GlobalISel/llvm-ir/rem_and_div.ll
test/CodeGen/X86/GlobalISel/callingconv.ll
test/CodeGen/X86/GlobalISel/irtranslator-callingconv.ll
test/CodeGen/X86/GlobalISel/legalize-add.mir
test/CodeGen/X86/GlobalISel/legalize-and-scalar.mir
test/CodeGen/X86/GlobalISel/legalize-memop-scalar.mir
test/CodeGen/X86/GlobalISel/legalize-mul-scalar.mir
test/CodeGen/X86/GlobalISel/legalize-or-scalar.mir
test/CodeGen/X86/GlobalISel/legalize-sub.mir
test/CodeGen/X86/GlobalISel/legalize-trunc.mir
test/CodeGen/X86/GlobalISel/legalize-xor-scalar.mir
unittests/CodeGen/GlobalISel/CMakeLists.txt
unittests/CodeGen/GlobalISel/CSETest.cpp
unittests/CodeGen/GlobalISel/GISelMITest.h
unittests/CodeGen/GlobalISel/LegalizerHelperTest.cpp
unittests/CodeGen/GlobalISel/LegalizerHelperTest.h
unittests/CodeGen/GlobalISel/PatternMatchTest.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D52803.180580.patch
Type: text/x-patch
Size: 152816 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190107/8c3a2378/attachment-0001.bin>
More information about the llvm-commits
mailing list