[all-commits] [llvm/llvm-project] 093b5a: [llvm][Uniformity] correctly use a vector as a set...
Sameer Sahasrabuddhe via All-commits
all-commits at lists.llvm.org
Fri Mar 3 02:27:22 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 093b5ac85f064875f62775bba73dbaf8feb85798
https://github.com/llvm/llvm-project/commit/093b5ac85f064875f62775bba73dbaf8feb85798
Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
Date: 2023-03-03 (Fri, 03 Mar 2023)
Changed paths:
M llvm/include/llvm/ADT/GenericUniformityImpl.h
Log Message:
-----------
[llvm][Uniformity] correctly use a vector as a set by uniqifying elements
The search for temporal divergence needs to determine a dominance frontier
defined for a cycle. The implementation uses a temporary vector to store a set
of newly discovered successors. Failing to uniqify the elements in this vector
causes a very large regression in compile time due to an exponential number of
redundant visits.
This fixes github issue #61123
Reviewed By: foad
Differential Revision: https://reviews.llvm.org/D145216
More information about the All-commits
mailing list