From aa290d76bb87abea3f1edf35f4fb7cb194b4d792 Mon Sep 17 00:00:00 2001 From: Andrew Zhang Date: Wed, 8 Jan 2025 16:12:13 -0800 Subject: [PATCH] Fixed a bug where slice Op legalization constructing QNN param with slicing size instead of end index. PiperOrigin-RevId: 713450306 --- .../qualcomm/compiler/legalizations/slice_op_legalization.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tensorflow/lite/experimental/litert/vendors/qualcomm/compiler/legalizations/slice_op_legalization.cc b/tensorflow/lite/experimental/litert/vendors/qualcomm/compiler/legalizations/slice_op_legalization.cc index 02206c3b26c..2a961f86e31 100644 --- a/tensorflow/lite/experimental/litert/vendors/qualcomm/compiler/legalizations/slice_op_legalization.cc +++ b/tensorflow/lite/experimental/litert/vendors/qualcomm/compiler/legalizations/slice_op_legalization.cc @@ -110,7 +110,8 @@ LiteRtStatus SliceOpLegalization::LegalizeOp(const Op& src, // Copy begin, end, and stride values from src_begin_indices and // src_size_indices to range_tensor_data. Stride is always 1. range_tensor_data[i * kRangesParamArgSize] = src_begin_indices->at(i); - range_tensor_data[i * kRangesParamArgSize + 1] = src_size_indices->at(i); + range_tensor_data[i * kRangesParamArgSize + 1] = + src_begin_indices->at(i) + src_size_indices->at(i); range_tensor_data[i * kRangesParamArgSize + 2] = 1; }