Shared: Disable dynamic join ordering for select predicates · github/codeql@fc0c1e9 · GitHub
Skip to content

Commit fc0c1e9

Browse files
committed
Shared: Disable dynamic join ordering for select predicates
1 parent e638bcc commit fc0c1e9

3 files changed

Lines changed: 6 additions & 0 deletions

File tree

‎shared/dataflow/codeql/dataflow/internal/DataFlowImpl.qll‎

Lines changed: 2 additions & 0 deletions

‎shared/dataflow/codeql/dataflow/internal/DataFlowImplCommon.qll‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1005,6 +1005,7 @@ module MakeImplCommon<LocationSig Location, InputSig<Location> Lang> {
10051005
private predicate relevantType(Type t) { t = getNodeType(_) }
10061006

10071007
cached
1008+
pragma[no_dynamic_join_order]
10081009
predicate isTopType(Type t) {
10091010
strictcount(Type t0 | relevantType(t0)) =
10101011
strictcount(Type t0 | relevantType(t0) and compatibleTypesCached(t, t0))
@@ -1514,6 +1515,7 @@ module MakeImplCommon<LocationSig Location, InputSig<Location> Lang> {
15141515
}
15151516

15161517
pragma[nomagic]
1518+
pragma[no_dynamic_join_order]
15171519
private predicate argumentValueFlowsThrough0(
15181520
Call call, ArgNode arg, ReturnKind kind, ReadStepTypesOption read, string model,
15191521
CachedCallContextSensitivity::CcNoCall outerCtx
@@ -2132,6 +2134,7 @@ module MakeImplCommon<LocationSig Location, InputSig<Location> Lang> {
21322134
* the current data flow stage has reached the call of `arg` from one of its
21332135
* call targets.
21342136
*/
2137+
pragma[no_dynamic_join_order]
21352138
private predicate typeFlowArgTypeFromReturn(ArgNode arg, Type t) {
21362139
exists(ParamNode p, Type t1, Type t2 |
21372140
dataFlowTakenCallEdgeOut(_, _, arg, p) and

‎shared/rangeanalysis/codeql/rangeanalysis/RangeAnalysis.qll‎

Lines changed: 1 addition & 0 deletions

0 commit comments

Comments
 (0)