Hi Kyrill, > > So you add a new alternative but don't modify any of the output logic, which > means it will use output_move_double. Can that handle an "r,r" alternative? > Or do you expect a split to always happen here? If so, the output should be > '#'
Yes.. so output_move_double can't indeed handle it, but it doesn't actually get used. The pattern here is only because reload has decided there must be one because of our cost = 2. In the end they will always be split due to the splitter in arm.md line 5897 which will split any 64 bit values after reload. And since this is an anonymous pattern you can't call It, so there really shouldn't be any case in which the r -> r case doesn't get split as VDX only contains 64 bit types. However I agree it may be confusing and probably a bit more correct if I put the #. Kind Regards, Tamar > > Thanks, > Kyrill