If SimplifyCFG attaches one block to another it removes all metadata from instructions of a block that should be attached because it can be depended on conditions that are changed during transformation.
In case of TBAA metadata, it looks too conservatively: data types of load/store instructions cannot be changed during such transformations even if the pointed data was changed.
So attached the patch saves TBAA tags from removing during SimplifyCFG transformations.
Details
Details
Diff Detail
Diff Detail
- Repository
- rC Clang