Adjusts the index and adds a bitcast around the vector operand of
EXTRACT_VECTOR_ELT so that its lane type matches the source type of
its parent sext_inreg. Without this bitcast the ISel patterns do not
match and ISel fails.
Details
Details
Diff Detail
Diff Detail
- Repository
- rL LLVM
Event Timeline
llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp | ||
---|---|---|
1229 ↗ | (On Diff #202260) | As we talked offline, this does not seem to do any casts, because Extract.getOperand(0)'s type should be VecT in the first place. |
Comment Actions
Oh, I accidentally accepted the CL, sorry. Will change to Request Changes instead. (It looks there's no option of 'cancelling' the acceptance.)
Comment Actions
@aheejin, this should be good to go now. Changing the test to use a real pointer instead of undef seems to have made it do the correct number of loads (32 bits, where before it was only loading 8 bits). Now that the test is very straightforward I am confident in the correctness of the code, so hopefully this should be good to land.