This is an archive of the discontinued LLVM Phabricator instance.

[LoopIdiomRecognize] Optimize cases when loop contains extra stores and loads
Needs ReviewPublic

Authored by eklepilkina on Mar 15 2023, 7:22 AM.

Details

Summary

The replacement with memset can be done only if there is no another instruction that aliases with optimized stores.
There are some cases when more precise memory access can be calculated for store and load instruction that allows to check aliasing of memory access more accurate and make optimizations in such cases.

Diff Detail

Event Timeline

eklepilkina created this revision.Mar 15 2023, 7:22 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 15 2023, 7:22 AM
eklepilkina requested review of this revision.Mar 15 2023, 7:22 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 15 2023, 7:22 AM
eklepilkina retitled this revision from [LoopIdiomRecognize] Precommit tests for store/loads that don't alias same memory location to [LoopIdiomRecognize] Optimize cases when loop contains extra stores and loads.Mar 15 2023, 7:43 AM
eklepilkina edited the summary of this revision. (Show Details)