[MLIR][XeGPU] Hoist i4 extensions above lane shuffles (#234760)
Hoist the i4-to-i8 portion of integer extensions through single-use
lane-shuffle and vector data-movement chains before XeGPU-to-XeVM
conversion. Legalize narrow casts into byte-level operations in a
separate preprocessing stage so the existing bitcast-shuffle lowering
can handle the widened fragments without repacking.
Cover signed and unsigned extensions, supported fragment widths,
layout-distribution shuffles, and unsupported consumers. Scope
preprocessing to casts and generated operations to preserve existing
conversion diagnostics.