[PATCH] D123784: [clang][analyzer][ctu] Traverse the ctu CallEnter nodes in reverse order
Balázs Benics via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Apr 19 02:30:53 PDT 2022
steakhal added inline comments.
================
Comment at: clang/lib/StaticAnalyzer/Core/WorkList.cpp:204-207
// Compare by number of times the location was visited first (negated
// to prefer less often visited locations), then by insertion time (prefer
// expanding nodes inserted sooner first).
+ using QueuePriority = std::pair<int, long>;
----------------
Please leave a note there, of what the negative values are used for.
================
Comment at: clang/lib/StaticAnalyzer/Core/WorkList.cpp:216-218
// Number of inserted nodes, used to emulate DFS ordering in the priority
// queue when insertions are equal.
+ long Counter = 0;
----------------
It seems like you are not exploiting the signedness of this variable. And a counter should never be negative anyway.
================
Comment at: clang/lib/StaticAnalyzer/Core/WorkList.cpp:255
+class CTUWorkList : public UnexploredFirstPriorityQueue {
+ enum class SecondaryOrder { DFS = 1, ReverseDFS };
+ SecondaryOrder ScndOrd = SecondaryOrder::ReverseDFS;
----------------
Raw enum would make it more convenient, and the scope is already private - thus it won't affect readability elsewhere.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D123784/new/
https://reviews.llvm.org/D123784
More information about the cfe-commits
mailing list