90c678abc9
## Summary This PR continues the TFLite frontend work tracked in #18971 for `STRIDED_SLICE` and `SPLIT_V`. Since the dynamic `FILL` / `SPLIT_V` partial-implementation work has already been handled separately in #19433, this PR focuses on the remaining pieces in this branch: - fixing negative-stride `STRIDED_SLICE` conversion in the TFLite frontend - adding regression coverage for `STRIDED_SLICE` and static `SPLIT_V` Relates to #18971. ## Changes 1. **`STRIDED_SLICE` negative-stride fix** - Update the TFLite frontend `convert_strided_slice` handling of `end_mask` when `stride < 0`. - Use an exclusive lower bound compatible with Relax slicing semantics so reverse slices like `x[::-1]` include index `0` correctly. 2. **TFLite frontend test coverage** - Add `test_strided_slice_stride` to cover non-unit stride handling. - Add `test_strided_slice_negative_stride` to cover reverse slicing with negative strides. - Add `test_split_v_static` to cover static `SPLIT_V` conversion. 3. **Scope clarification** - Keep this PR focused on the remaining `STRIDED_SLICE` / `SPLIT_V` work from #18971. - Exclude the dynamic `FILL` / `SPLIT_V` changes that are already addressed in #19433. ## Testing ```bash python -m pytest -n 1 tests/python/relax/test_frontend_tflite.py::test_split_v_static -q python -m pytest -n 1 tests/python/relax/test_frontend_tflite.py::test_strided_slice_stride -q python -m pytest -n 1 tests/python/relax/test_frontend_tflite.py::test_strided_slice_negative_stride -q ``` ## Result - The added STRIDED_SLICE and SPLIT_V tests passed locally. - The negative-stride STRIDED_SLICE path now matches Relax slicing semantics.