Beside caching the alias results, this is another step to reduce the SLPVectorizer's runtime.
In case of blocks with many memory-accessing instructions, alias checking can take lot of time (because calculating the memory dependencies has quadratic complexity).
I chose a limit which resulted in no changes when running the benchmarks.
Details
Details
- Reviewers
aschwaighofer
Diff Detail
Diff Detail
Event Timeline
Comment Actions
I think that this should be a global at the top of the file so that it is more visible to folks would want to experiment with thresholds.
Maybe we could also make the name reflect that is only counting the failed alias checks: FailedAliasChecksLimit or so.
Otherwise, LGTM.