Some cases may be transformed into 32 bit splats before hitting the boolean statement, which may cause incorrect behaviour and provide XXSPLTI32DX with the incorrect values of splat. The condition was reversed so that the shortcut prevents this problem.
Details
Details
- Reviewers
nemanjai saghir lei - Group Reviewers
Restricted Project - Commits
- rG2e470e03b49f: [PowerPC][Power10] Fix XXSPLI32DX not correctly exploiting specific cases
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Comment Actions
LGTM as long as the nits are addressed on the commit.
llvm/lib/Target/PowerPC/PPCISelLowering.cpp | ||
---|---|---|
8611–8614 | // Check the type first to short-circuit so we don't modify APSplatBits if // this block isn't executed. | |
8619 | We can get rid of this now that the problem is fixed (i.e. this can go back to just being an else). | |
llvm/test/CodeGen/PowerPC/p10-splatImm32.ll | ||
103–104 | Get rid of this test case now. It is redundant. | |
103–104 | Get rid of this comment now, the FIXME has been addressed. |