Merge pull request #45694 from linux-on-ibm-z:shape_signature_fix
PiperOrigin-RevId: 350065994 Change-Id: Iaa890b4d29b00f85bbaacf3af36c2ddfef2870b6
This commit is contained in:
commit
561e7f8758
@ -111,11 +111,15 @@ class Subgraph {
|
|||||||
inline TfLiteStatus SetTensorParametersReadWrite(
|
inline TfLiteStatus SetTensorParametersReadWrite(
|
||||||
int tensor_index, TfLiteType type, const char* name,
|
int tensor_index, TfLiteType type, const char* name,
|
||||||
const std::vector<int>& dims, TfLiteQuantization quantization,
|
const std::vector<int>& dims, TfLiteQuantization quantization,
|
||||||
bool is_variable = false, const size_t rank_dims_signature = 0,
|
bool is_variable = false, const std::vector<int>& dims_signature = {}) {
|
||||||
const int* dims_signature = nullptr) {
|
if (dims_signature.empty()) {
|
||||||
return SetTensorParametersReadWrite(tensor_index, type, name, dims.size(),
|
return SetTensorParametersReadWrite(tensor_index, type, name, dims.size(),
|
||||||
dims.data(), quantization, is_variable,
|
dims.data(), quantization,
|
||||||
rank_dims_signature, dims_signature);
|
is_variable);
|
||||||
|
}
|
||||||
|
return SetTensorParametersReadWrite(
|
||||||
|
tensor_index, type, name, dims.size(), dims.data(), quantization,
|
||||||
|
is_variable, dims_signature.size(), dims_signature.data());
|
||||||
}
|
}
|
||||||
TfLiteStatus SetTensorParametersReadWrite(
|
TfLiteStatus SetTensorParametersReadWrite(
|
||||||
int tensor_index, TfLiteType type, const char* name, const size_t rank,
|
int tensor_index, TfLiteType type, const char* name, const size_t rank,
|
||||||
|
@ -587,11 +587,9 @@ TfLiteStatus InterpreterBuilder::ParseTensors(
|
|||||||
status = kTfLiteError;
|
status = kTfLiteError;
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t dims_signature_rank = 0;
|
std::vector<int> dims_signature = {};
|
||||||
const int* dims_signature_data = nullptr;
|
|
||||||
if (tensor->shape_signature()) {
|
if (tensor->shape_signature()) {
|
||||||
dims_signature_rank = tensor->shape_signature()->size();
|
dims_signature = FlatBufferIntArrayToVector(tensor->shape_signature());
|
||||||
dims_signature_data = tensor->shape_signature()->data();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool is_variable = tensor->is_variable();
|
bool is_variable = tensor->is_variable();
|
||||||
@ -623,7 +621,7 @@ TfLiteStatus InterpreterBuilder::ParseTensors(
|
|||||||
} else {
|
} else {
|
||||||
if (subgraph->SetTensorParametersReadWrite(
|
if (subgraph->SetTensorParametersReadWrite(
|
||||||
i, type, get_name(tensor), dims, quantization, is_variable,
|
i, type, get_name(tensor), dims, quantization, is_variable,
|
||||||
dims_signature_rank, dims_signature_data) != kTfLiteOk) {
|
dims_signature) != kTfLiteOk) {
|
||||||
error_reporter_->Report("Tensor %d is invalidly specified in schema.\n",
|
error_reporter_->Report("Tensor %d is invalidly specified in schema.\n",
|
||||||
i);
|
i);
|
||||||
status = kTfLiteError;
|
status = kTfLiteError;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user