[PATCH] D33758: [globalisel][tablegen] Partially fix compile-time regressions by converting matcher to state-machine(s)
Daniel Sanders via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Jun 1 00:06:31 PDT 2017
dsanders created this revision.
Herald added subscribers: kristof.beyls, igorb, javed.absar, aemerson.
Replace the matcher if-statements for each rule with a state-machine. This
significantly reduces compile time, memory allocations, and cumulative memory
allocation when compiling AArch64InstructionSelector.cpp.o after r303259 is
recommitted.
The following patches will expand on this further to fully fix the regressions.
https://reviews.llvm.org/D33758
Files:
include/llvm/CodeGen/GlobalISel/InstructionSelector.h
include/llvm/CodeGen/GlobalISel/InstructionSelectorImpl.h
lib/Target/AArch64/AArch64InstructionSelector.cpp
lib/Target/ARM/ARMInstructionSelector.cpp
lib/Target/X86/X86InstructionSelector.cpp
test/TableGen/GlobalISelEmitter.td
utils/TableGen/GlobalISelEmitter.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D33758.100964.patch
Type: text/x-patch
Size: 88912 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170601/17d90d3c/attachment.bin>
More information about the llvm-commits
mailing list