[PATCH] D58646: [X86] In X86DomainReassignment.cpp add enclosed registers to EnclosedEdges
Guozhi Wei via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Feb 25 14:42:39 PST 2019
Carrot created this revision.
Carrot added reviewers: guyblank, craig.topper.
Herald added subscribers: llvm-commits, jdoerfert.
Herald added a project: LLVM.
The variable X86DomainReassignment::EnclosedEdges is used to store registers that have been enclosed in some closure, so those registers will be ignored when create new closures. But there is no registers has ever been put into this set, so a single register can be enclosed in multiple closures, it significantly increase compile time.
This patch adds a register into EnclosedEdges when it is enclosed into a closure.
Repository:
rL LLVM
https://reviews.llvm.org/D58646
Files:
lib/Target/X86/X86DomainReassignment.cpp
Index: lib/Target/X86/X86DomainReassignment.cpp
===================================================================
--- lib/Target/X86/X86DomainReassignment.cpp
+++ lib/Target/X86/X86DomainReassignment.cpp
@@ -556,6 +556,7 @@
// Register already in this closure.
if (!C.insertEdge(CurReg))
continue;
+ EnclosedEdges.insert(Reg);
MachineInstr *DefMI = MRI->getVRegDef(CurReg);
encloseInstr(C, DefMI);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D58646.188255.patch
Type: text/x-patch
Size: 432 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190225/3e31ec85/attachment.bin>
More information about the llvm-commits
mailing list