[ONNX] Fix Split operator for uneven splits with num_outputs by Mr-Neutr0n · Pull Request #18774 · apache/tvm

@Mr-Neutr0n

The ONNX frontend's Split converter failed when the tensor dimension
wasn't evenly divisible by num_outputs (e.g., splitting a length-10
tensor into 3 parts). This implements the ceil-based split calculation
from the ONNX Opset 18 spec: block_size = ceil(dim / num_outputs),
yielding [block_size] * (N-1) + [remainder] for the output sizes.

When the input shape is statically known, explicit cumulative split
indices are computed and passed to relax.op.split. For dynamic shapes,
the integer num_outputs is passed through as before.

Fixes apache#18751

Signed-off-by: Mr-Neutr0n <64578610+Mr-Neutr0n@users.noreply.github.com>