@@ -779,6 +779,7 @@ void CanonicalizeLoops(Function *F, FunctionAnalysisManager &FAM) {
779
779
PA.preserve <PostDominatorTreeAnalysis>();
780
780
PA.preserve <TypeBasedAA>();
781
781
PA.preserve <BasicAA>();
782
+ PA.preserve <ScopedNoAliasAA>();
782
783
FAM.invalidate (*F, PA);
783
784
}
784
785
@@ -801,6 +802,8 @@ PreProcessCache::PreProcessCache() {
801
802
FAM.registerPass ([] { return BasicAA (); });
802
803
MAM.registerPass ([] { return GlobalsAA (); });
803
804
805
+ FAM.registerPass ([] { return ScopedNoAliasAA (); });
806
+
804
807
// SCEVAA causes some breakage/segfaults
805
808
// disable for now, consider enabling in future
806
809
// FAM.registerPass([] { return SCEVAA(); });
@@ -813,6 +816,7 @@ PreProcessCache::PreProcessCache() {
813
816
AM.registerFunctionAnalysis <BasicAA>();
814
817
AM.registerFunctionAnalysis <TypeBasedAA>();
815
818
AM.registerModuleAnalysis <GlobalsAA>();
819
+ AM.registerFunctionAnalysis <ScopedNoAliasAA>();
816
820
817
821
// broken for different reasons
818
822
// AM.registerFunctionAnalysis<SCEVAA>();
@@ -956,6 +960,7 @@ Function *PreProcessCache::preprocessForClone(Function *F,
956
960
AAResults AA2 (FAM.getResult <TargetLibraryAnalysis>(*NewF));
957
961
AA2.addAAResult (FAM.getResult <BasicAA>(*NewF));
958
962
AA2.addAAResult (FAM.getResult <TypeBasedAA>(*NewF));
963
+ AA2.addAAResult (FAM.getResult <ScopedNoAliasAA>(*NewF));
959
964
960
965
for (auto &g : NewF->getParent ()->globals ()) {
961
966
bool inF = false ;
@@ -1282,6 +1287,7 @@ Function *PreProcessCache::preprocessForClone(Function *F,
1282
1287
PA.preserve <PostDominatorTreeAnalysis>();
1283
1288
PA.preserve <TypeBasedAA>();
1284
1289
PA.preserve <BasicAA>();
1290
+ PA.preserve <ScopedNoAliasAA>();
1285
1291
PA.preserve <ScalarEvolutionAnalysis>();
1286
1292
#if LLVM_VERSION_MAJOR > 6
1287
1293
PA.preserve <PhiValuesAnalysis>();
@@ -1378,6 +1384,7 @@ Function *PreProcessCache::preprocessForClone(Function *F,
1378
1384
PA.preserve <PostDominatorTreeAnalysis>();
1379
1385
PA.preserve <TypeBasedAA>();
1380
1386
PA.preserve <BasicAA>();
1387
+ PA.preserve <ScopedNoAliasAA>();
1381
1388
PA.preserve <ScalarEvolutionAnalysis>();
1382
1389
#if LLVM_VERSION_MAJOR > 6
1383
1390
PA.preserve <PhiValuesAnalysis>();
0 commit comments