@@ -493,6 +493,7 @@ private predicate barrierGuardBlocksEdge(
493
493
*
494
494
* This predicate exists to get a better join-order for the `barrierGuardBlocksEdge` predicate above.
495
495
*/
496
+ pragma [ noinline]
496
497
private BasicBlock getADominatedBasicBlock ( BarrierGuardNode guard , ConditionGuardNode cond ) {
497
498
barrierGuardIsRelevant ( guard ) and
498
499
guard .getEnclosingExpr ( ) = cond .getTest ( ) and
@@ -996,6 +997,7 @@ private predicate exploratoryLoadStep(
996
997
*
997
998
* This private predicate is only used in `exploratoryLoadStep`, and exists as a separate predicate to give the compiler a hint about join-ordering.
998
999
*/
1000
+ pragma [ noinline]
999
1001
private string getAForwardRelevantLoadProperty ( DataFlow:: Configuration cfg ) {
1000
1002
exists ( DataFlow:: Node previous | isRelevantForward ( previous , cfg ) |
1001
1003
basicStoreStep ( previous , _, result ) or
@@ -1055,6 +1057,7 @@ private predicate exploratoryBackwardStoreStep(
1055
1057
*
1056
1058
* This private predicate is only used in `exploratoryBackwardStoreStep`, and exists as a separate predicate to give the compiler a hint about join-ordering.
1057
1059
*/
1060
+ pragma [ noinline]
1058
1061
private string getABackwardsRelevantStoreProperty ( DataFlow:: Configuration cfg ) {
1059
1062
exists ( DataFlow:: Node mid | isRelevant ( mid , cfg ) |
1060
1063
basicLoadStep ( mid , _, result ) or
@@ -1672,6 +1675,7 @@ private predicate onPath(DataFlow::Node nd, DataFlow::Configuration cfg, PathSum
1672
1675
*
1673
1676
* This predicate has been outlined from `onPath` to give the optimizer a hint about join-ordering.
1674
1677
*/
1678
+ pragma [ noinline]
1675
1679
private predicate onPathStep (
1676
1680
DataFlow:: Node nd , DataFlow:: Configuration cfg , PathSummary summary , PathSummary stepSummary ,
1677
1681
DataFlow:: Node mid
0 commit comments