aboutsummaryrefslogtreecommitdiff
path: root/clang/unittests/Format/FormatTestJava.cpp
diff options
context:
space:
mode:
authorLang Hames <lhames@gmail.com>2025-10-20 15:59:56 -0700
committerGitHub <noreply@github.com>2025-10-20 15:59:56 -0700
commitc8c86efbbb55e51597c1bd8feb2e947bc0de3422 (patch)
tree7f000d04094941a142d24ae23e0ba427c9f7e18c /clang/unittests/Format/FormatTestJava.cpp
parente7f370f910701b6c67d41dab80e645227692c58b (diff)
downloadllvm-c8c86efbbb55e51597c1bd8feb2e947bc0de3422.zip
llvm-c8c86efbbb55e51597c1bd8feb2e947bc0de3422.tar.gz
llvm-c8c86efbbb55e51597c1bd8feb2e947bc0de3422.tar.bz2
[ORC] Replace ORC's baked-in dependence tracking with WaitingOnGraph. (#163027)
WaitingOnGraph tracks waiting-on relationships between nodes (intended to represent symbols in an ORC program) in order to identify nodes that are *Ready* (i.e. are not waiting on any other nodes) or have *Failed* (are waiting on some node that cannot be produced). WaitingOnGraph replaces ORC's baked-in data structures that were tracking the same information (EmissionDepUnit, EmissionDepUnitInfo, ...). Isolating this information in a separate data structure simplifies the code, allows us to unit test it, and simplifies performance testing. The WaitingOnGraph uses several techniques to improve performance relative to the old data structures, including symbol coalescing ("SuperNodes") and symbol keys that don't perform unnecessary reference counting (NonOwningSymbolStringPtr). This commit includes unit tests for common dependence-tracking issues that have led to ORC bugs in the past.
Diffstat (limited to 'clang/unittests/Format/FormatTestJava.cpp')
0 files changed, 0 insertions, 0 deletions