[AArch64][GlobalISel] Select UMULL instruction (#65469)
Global ISel now selects `UMULL` and `UMULL2` instructions. G_MUL instruction with input operands coming from `SEXT` or `ZEXT` operations are turned into UMULL G_MUL instructions with v2s64 result type is always scalarised except: `mul ( unmerge( ext ), unmerge( ext ))` So the extend could be unmerged and fold away the unmerge in the middle: `mul ( unmerge( ext ), unmerge( ext ))` => `mul ( unmerge( merge( ext( unmerge )), unmerge( merge( ext( unmerge ))))` => `mul ( ext(unmerge)), ( ext( unmerge ))) `
Loading
Please sign in to comment