From: MITSUNARI Shigeo <[email protected]> Thanks for the review. All points are addressed in v7; see the cover letter for the per-point summary.
One clarification not in the cover letter: the magic goes through gen_int_mode(), which takes a HOST_WIDE_INT, so the helper guards with GET_MODE_BITSIZE (wide_mode) <= HOST_BITS_PER_WIDE_INT. This keeps the shift safe on a 32-bit HWI host and bounds the transform to modes whose 2x-wide mode fits a HOST_WIDE_INT; DImode is thus excluded on purpose (128-bit magic, and seq_cost would reject it anyway).
