Added ISel for smlawb, smlawt, smulwb and smulwt instructions for the ARM backend, along with CodeGen tests.
A fix for the bug reported in llvm.org/bugs/show_bug.cgi?id=21297
Details
Diff Detail
Event Timeline
Hi Sam,
The patch looks good. My comments are more about the format than the contents, which seems ok.
I don't particularly like how the Opc is set down all those nested functions across the multiple branches, but I don't have a better idea. This sequence of instructions is really hard to map into a simple structure (too many orthogonal variations).
Can you re-format and re-submit with -U999 so we can have a bit more context, please?
cheers,
--renato
lib/Target/ARM/ARMISelDAGToDAG.cpp | ||
---|---|---|
94 | irrelevant whispace change | |
2534 | clang format | |
test/CodeGen/ARM/smul.ll | ||
39 | better to use CHECK-LABEL: @f4 on all of them |
Hi Renato,
Thanks for the review and sorry I forgot about the added context again, I will add the changes after further review.
cheers,
sam
Combined the SelectSMLAWX and SelectSMULWX functions into one, as well as adding extra checks that Opc gets assigned before creating the new node. Also updated the test check labels.
irrelevant whispace change