The return value type of getSizeInBits() is TypeSize now. Keep the type of the offset as TypeSize to enable concat_vectors to handle scalable vector objects correctly.
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp | ||
---|---|---|
1423 | Does this assert need to be updated so that it doesn't implicitly cast TypeByteSize to an unsigned? I assume that will print a warning about assuming fixed size. |
As before I still believe there should be a test to protect this fix as presumably you're doing it for a reason.
I agree. I encountered the bug when implementing some vector instructions in the downstream. Currently, we are changing the way to implement these vector instructions. We could not trigger it any more under the new implementation. So, I have no idea how to create the test case now. I will not land this commit until I could find a way to test it.
clang-tidy: error: no viable conversion from 'unsigned long' to 'llvm::TypeSize' [clang-diagnostic-error]
not useful