Python: Add more overlay[caller] to Flow.qll

These were causing the repo `gufolabs/noc` to spend ~30 seconds
evaluating `ControlFlowNode.strictlyDominates`. Just in case, I added
`overlay[caller] to the other instances of `pragma[inline]` as well.
This commit is contained in:
Taus
2026-02-02 13:37:12 +00:00
parent 248932db7a
commit 72f5109ec2

View File

@@ -194,6 +194,7 @@ class ControlFlowNode extends @py_flow_node {
predicate isNormalExit() { py_scope_flow(this, _, 0) or py_scope_flow(this, _, 2) }
/** Whether this strictly dominates other. */
overlay[caller]
pragma[inline]
predicate strictlyDominates(ControlFlowNode other) {
// This predicate is gigantic, so it must be inlined.
@@ -207,6 +208,7 @@ class ControlFlowNode extends @py_flow_node {
* Whether this dominates other.
* Note that all nodes dominate themselves.
*/
overlay[caller]
pragma[inline]
predicate dominates(ControlFlowNode other) {
// This predicate is gigantic, so it must be inlined.
@@ -216,6 +218,7 @@ class ControlFlowNode extends @py_flow_node {
}
/** Whether this strictly reaches other. */
overlay[caller]
pragma[inline]
predicate strictlyReaches(ControlFlowNode other) {
// This predicate is gigantic, even larger than strictlyDominates,