mirror of
https://github.com/intel/llvm.git
synced 2026-01-28 10:38:23 +08:00
b7fbfa68779a3f96c6cc933aba3cafb91f3a37ef
Summary: After (x,y) is inserted, depth-based search finds all affected v that satisfies: depth(nca(x,y))+1 < depth(v) && there exists a path P from y to v where every w on P satisfies depth(v) <= depth(w) This reduces to a widest path problem (maximizing the depth of the minimum vertex in the path) which can be solved by a modified version of Dijkstra with a bucket queue (named depth-based search in the paper). The algorithm visits vertices in decreasing order of bucket number. However, the current code misused priority_queue to extract them in increasing order. I cannot think of a failing scenario but it surely may process vertices more than once due to the local usage of Processed. This patch fixes this bug and simplifies/optimizes the code a bit. Also add more comments. Reviewers: kuhar Reviewed By: kuhar Subscribers: kristina, jdoerfert, llvm-commits, NutshellySima, brzycki Tags: #llvm Differential Revision: https://reviews.llvm.org/D58349 llvm-svn: 354306
…
…
The LLVM Compiler Infrastructure
This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.
Languages
LLVM
41.5%
C++
31.7%
C
13%
Assembly
9.1%
MLIR
1.5%
Other
2.8%