MCPcopy Create free account
hub / github.com/DeepRec-AI/DeepRec / ConvertPlaceholderOperator

Function ConvertPlaceholderOperator

tensorflow/lite/toco/import_tensorflow.cc:1503–1541  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1501}
1502
1503tensorflow::Status ConvertPlaceholderOperator(
1504 const NodeDef& node, const TensorFlowImportFlags& tf_import_flags,
1505 const ModelFlags& model_flags, Model* model) {
1506 CHECK(node.op() == "Placeholder" || node.op() == "LegacyFedInput");
1507 if (node.op() == "Placeholder") {
1508 TF_QCHECK_OK(CheckInputsCount(node, tf_import_flags, 0));
1509 }
1510
1511 bool inside_input_arrays = false;
1512 for (const auto& input_array : model_flags.input_arrays()) {
1513 if (node.name() == input_array.name()) {
1514 inside_input_arrays = true;
1515 break;
1516 }
1517 }
1518
1519 if (!inside_input_arrays) {
1520 model->AddInvalidInputArray(node.name());
1521 }
1522
1523 auto& array = model->GetOrCreateArray(node.name());
1524 if (node.attr().count("dtype")) {
1525 array.data_type = ConvertDataType(GetDataTypeAttr(node, "dtype"));
1526 }
1527 if (node.attr().count("shape")) {
1528 const auto& shape = GetShapeAttr(node, "shape");
1529 auto num_dims = shape.dim_size();
1530 // TODO(b/62716978): This logic needs to be revisited. During dims
1531 // refactoring it is an interim fix.
1532 if (num_dims > 0 && !HasWildcardDimension(shape)) {
1533 auto& dst_array_dims = *array.mutable_shape()->mutable_dims();
1534 dst_array_dims.resize(num_dims);
1535 for (std::size_t i = 0; i < num_dims; i++) {
1536 dst_array_dims[i] = shape.dim(i).size();
1537 }
1538 }
1539 }
1540 return tensorflow::Status::OK();
1541}
1542
1543tensorflow::Status ConvertNoOpOperator(
1544 const NodeDef& node, const TensorFlowImportFlags& tf_import_flags,

Callers

nothing calls this directly

Calls 15

CheckInputsCountFunction · 0.85
GetDataTypeAttrFunction · 0.85
HasWildcardDimensionFunction · 0.85
AddInvalidInputArrayMethod · 0.80
attrMethod · 0.80
mutable_dimsMethod · 0.80
ConvertDataTypeFunction · 0.70
nameMethod · 0.65
opMethod · 0.45
countMethod · 0.45
dim_sizeMethod · 0.45
mutable_shapeMethod · 0.45

Tested by

no test coverage detected