History log of /llvm-project/clang/unittests/Analysis/IntervalPartitionTest.cpp (Results 1 – 3 of 3)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init, llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2
# e21b1dd9 03-Aug-2023 Yitzhak Mandelbaum <yitzhakm@google.com>

[clang][CFG] Fix 2 memory errors in interval computation.

This fixes 2 bugs and adds corresponding tests. Both related to unreachable
blocks. One occured in the `WTOCompare` construction, which assu

[clang][CFG] Fix 2 memory errors in interval computation.

This fixes 2 bugs and adds corresponding tests. Both related to unreachable
blocks. One occured in the `WTOCompare` construction, which assumed the size of
the order was the same as the number of blocks in the CFG, which isn't true when
some blocks are unreachable. The other assumed predecessor pointers were
non-null, which can be false for blocks with unreachable predecessors.

Differential Revision: https://reviews.llvm.org/D157033

show more ...


Revision tags: llvmorg-17.0.0-rc1, llvmorg-18-init
# 26db5e65 12-Jun-2023 Yitzhak Mandelbaum <yitzhakm@google.com>

[clang][CFG] Support construction of a weak topological ordering of the CFG.

This patch adds support for building a weak topological ordering (WTO) of the
CFG blocks, based on a limit flow graph con

[clang][CFG] Support construction of a weak topological ordering of the CFG.

This patch adds support for building a weak topological ordering (WTO) of the
CFG blocks, based on a limit flow graph constructed via (repeated) interval
partitioning of the CFG.

This patch is part 2 of 2 for adding WTO support.

Differential Revision: https://reviews.llvm.org/D153058

show more ...


Revision tags: llvmorg-16.0.6
# f4cf51c9 05-Jun-2023 Yitzhak Mandelbaum <yitzhakm@google.com>

[clang][CFG] Add support for partitioning CFG into intervals.

Adds support for the classic dataflow algorithm that partitions a flow graph
into distinct intervals. C.f. Dragon book, pp. 664-666.

A

[clang][CFG] Add support for partitioning CFG into intervals.

Adds support for the classic dataflow algorithm that partitions a flow graph
into distinct intervals. C.f. Dragon book, pp. 664-666.

A version of this algorithm exists in LLVM (see llvm/Analysis/Interval.h and
related files), but it is specific to LLVM, is a recursive (vs iterative)
algorithm, and uses many layers of abstraction that seem unnecessary for CFG
purposes.

This patch is part 1 of 2. The next patch will generalize the code to work on
intervals, to support computation of the limit flow graph.

Differential Revision: https://reviews.llvm.org/D152263

show more ...