aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar A. Unique TensorFlower <gardener@tensorflow.org>2018-07-03 15:21:03 -0700
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2018-07-03 15:23:56 -0700
commitca556cecf44ea91987ee27bf3d3f8c14db80dc8a (patch)
tree1010060bed9a85c57129eba481ad0c7431220d98
parent072059eff5b3e0a7074981b338726e9fbcac5907 (diff)
Only set default min/max on types where it makes sense.
PiperOrigin-RevId: 203192045
-rw-r--r--tensorflow/contrib/lite/toco/graph_transformations/propagate_default_min_max.cc14
1 files changed, 12 insertions, 2 deletions
diff --git a/tensorflow/contrib/lite/toco/graph_transformations/propagate_default_min_max.cc b/tensorflow/contrib/lite/toco/graph_transformations/propagate_default_min_max.cc
index 50b90e7c2b..cd078ef189 100644
--- a/tensorflow/contrib/lite/toco/graph_transformations/propagate_default_min_max.cc
+++ b/tensorflow/contrib/lite/toco/graph_transformations/propagate_default_min_max.cc
@@ -25,6 +25,14 @@ limitations under the License.
namespace toco {
+namespace {
+
+bool SupportsMinMax(const Array& array) {
+ return array.data_type == ArrayDataType::kFloat;
+}
+
+} // namespace
+
// Propagates default min/max values to any operator input/output array that
// is missing them.
//
@@ -39,14 +47,16 @@ bool PropagateDefaultMinMax::Run(Model* model, std::size_t op_index) {
for (const auto& input : op->inputs) {
auto& input_array = model->GetArray(input);
- if (!input_array.minmax && !input_array.buffer) {
+ if (!input_array.minmax && !input_array.buffer &&
+ SupportsMinMax(input_array)) {
did_change |= SetArrayMinMax(input, &input_array);
}
}
for (const auto& output : op->outputs) {
auto& output_array = model->GetArray(output);
- if (!output_array.minmax && !output_array.buffer) {
+ if (!output_array.minmax && !output_array.buffer &&
+ SupportsMinMax(output_array)) {
did_change |= SetArrayMinMax(output, &output_array);
}
}