Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions shared/dataflow/codeql/dataflow/internal/DataFlowImpl.qll
Original file line number Diff line number Diff line change
Expand Up @@ -1490,6 +1490,7 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {

private module RevTypeFlow = TypeFlow<RevTypeFlowInput>;

pragma[no_dynamic_join_order]
pragma[nomagic]
private predicate flowIntoCallApValid(Call call, Callable c, ArgNd arg, ParamNd p, Ap ap) {
flowIntoCallAp(call, c, arg, p, ap) and
Expand All @@ -1506,6 +1507,7 @@ module MakeImpl<LocationSig Location, InputSig<Location> Lang> {
)
}

pragma[no_dynamic_join_order]
private predicate revFlowIn(Call call, Callable c, ArgNd arg, Ap ap) {
exists(ParamNd p |
revFlow(p, TReturnCtxNone(), _, ap) and
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1004,6 +1004,7 @@ module MakeImplCommon<LocationSig Location, InputSig<Location> Lang> {

private predicate relevantType(Type t) { t = getNodeType(_) }

pragma[no_dynamic_join_order]
cached
predicate isTopType(Type t) {
strictcount(Type t0 | relevantType(t0)) =
Expand Down Expand Up @@ -1513,6 +1514,7 @@ module MakeImplCommon<LocationSig Location, InputSig<Location> Lang> {
Cand::argumentValueFlowsThroughCand(arg, _, _)
}

pragma[no_dynamic_join_order]
pragma[nomagic]
private predicate argumentValueFlowsThrough0(
Call call, ArgNode arg, ReturnKind kind, ReadStepTypesOption read, string model,
Expand Down Expand Up @@ -2132,6 +2134,7 @@ module MakeImplCommon<LocationSig Location, InputSig<Location> Lang> {
* the current data flow stage has reached the call of `arg` from one of its
* call targets.
*/
pragma[no_dynamic_join_order]
private predicate typeFlowArgTypeFromReturn(ArgNode arg, Type t) {
exists(ParamNode p, Type t1, Type t2 |
dataFlowTakenCallEdgeOut(_, _, arg, p) and
Expand Down
2 changes: 2 additions & 0 deletions shared/rangeanalysis/codeql/rangeanalysis/RangeAnalysis.qll
Original file line number Diff line number Diff line change
Expand Up @@ -866,6 +866,7 @@ module RangeStage<
* - `upper = true` : `v <= b + delta`
* - `upper = false` : `v >= b + delta`
*/
pragma[no_dynamic_join_order]
private predicate boundedSsa(
Sem::SsaVariable v, SemBound b, D::Delta delta, SsaReadPosition pos, boolean upper,
boolean fromBackEdge, D::Delta origdelta, SemReason reason
Expand Down Expand Up @@ -1289,6 +1290,7 @@ module RangeStage<
* - `upper = true` : `e <= b + delta`
* - `upper = false` : `e >= b + delta`
*/
pragma[no_dynamic_join_order]
predicate initialBounded(
Sem::Expr e, SemBound b, D::Delta delta, boolean upper, boolean fromBackEdge,
D::Delta origdelta, SemReason reason
Expand Down
Loading