https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103168
--- Comment #12 from hubicka at kam dot mff.cuni.cz --- > unsigned p; > unsigned __attribute__((noinline)) test (void) > { > return p; > } > > modref analyzing 'test' (ipa=0) (pure) > - Analyzing load: p > - Recording base_set=0 ref_set=0 > - modref done with result: tracked. Modref does not record accesses to global vars as known baes and just as accesses relative to MODREF_UNKONWN_PARM (since ipa-reference does this) So only useful info it collect from loads/stores is the alias set and here it is 0 (why?). Then it drops the summary as useless since function is detected as pure earlier and that holds the same info.