This helps us fold a number of cases where we're clamping chains of values with constant min/max values.
There is an instruction increase in the vtrunc_v128i32_v128i64 test in fixed-vector-trunc-vp.ll as what had been chains of umin(umin(umin(x,c1),c2),c3), created by multiple levels of SplitEVL legalization calls, are flattened, resulting in better instruction parallelism but also an increase in in-flight values. This is a common issue with node reassociation, so I'm not sure if this is of any particular concern?
Fixes #58110