[SelectionDAG] Improve `CLMUL` lowering for `Promote` types wider than register width (#209265)

For `ISD::CLMUL`, add a check to `PromoteIntRes_CLMUL` to take advantage
of the cross-product expansion in `ExpandIntRes_CLMUL` when possible for
`Promote` types which are wider than the register width (e.g. `i96` for
64-bit registers).

GitOrigin-RevId: 4d5bc903c8a79fbadb62d8dd1e7cc93ad7a394fd
4 files changed