If the value from constant-pool is a splat value of vector type, do not need swap after load from constant-pool.
Details
Details
- Reviewers
shchenz nemanjai - Group Reviewers
Restricted Project - Commits
- rG52a774fd4c18: [PowerPC] remove XXSWAPD after load from CP which is a splat value
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
llvm/lib/Target/PowerPC/PPCMIPeephole.cpp | ||
---|---|---|
656 | Sure. I did not see any existing case improved by 0 or 3, and cannot see why we will hit these due to my limited knowledge. Since these two looks no harm to me, I will add them anyway. Thank you for pointing out and let me know if you have any IR case to show. | |
675 | Sure. I will address those in separate patch if there is any opportunity. Thank you! |
Seems for swap XXPERMDI (Immed == 0 || Immed == 3), if the input is a splat constant value, there is also an opportunity to optimize the swap away?