ArmNN
 21.02
TfLiteParser.cpp File Reference
#include "TfLiteParser.hpp"
#include "armnnTfLiteParser/Version.hpp"
#include <armnn/BackendOptions.hpp>
#include <armnn/Descriptors.hpp>
#include <armnn/Exceptions.hpp>
#include <armnn/Logging.hpp>
#include <armnn/Tensor.hpp>
#include <armnnUtils/TensorUtils.hpp>
#include <armnn/TypesUtils.hpp>
#include <armnn/utility/Assert.hpp>
#include <armnn/utility/IgnoreUnused.hpp>
#include <armnn/utility/NumericCast.hpp>
#include <armnnUtils/Permute.hpp>
#include <Filesystem.hpp>
#include <ParserHelper.hpp>
#include <VerificationHelpers.hpp>
#include <schema_generated.h>
#include <flatbuffers/flexbuffers.h>
#include <fmt/format.h>
#include <algorithm>
#include <fstream>
#include <iostream>
#include <limits>
#include <numeric>
#include <sstream>

Go to the source code of this file.

Namespaces

 armnnTfLiteParser
 

Macros

#define ARMNN_THROW_PARSE_EXCEPTION(msg)
 
#define CHECK_SUBGRAPH(MODEL, SUBGRAPH_INDEX)   CheckSubgraph(MODEL, SUBGRAPH_INDEX, CHECK_LOCATION())
 
#define CHECK_MODEL(MODEL, SUBGRAPH_INDEX, OPERATOR_INDEX)   CheckModel(MODEL, SUBGRAPH_INDEX, OPERATOR_INDEX, CHECK_LOCATION())
 
#define CHECK_TENSOR(MODEL, SUBGRAPH_INDEX, TENSOR_INDEX)   CheckTensor(MODEL, SUBGRAPH_INDEX, TENSOR_INDEX, CHECK_LOCATION())
 
#define CHECK_TENSOR_PTR(TENSOR_PTR)   CheckTensorPtr(TENSOR_PTR, CHECK_LOCATION())
 
#define CHECK_BUFFER(MODEL, BUFFER_INDEX)   CheckBuffer(MODEL, BUFFER_INDEX, CHECK_LOCATION())
 
#define CHECK_BUFFER_SIZE(BUFFER_PTR, TENSOR_INFO, BUFFER_ID)   CheckBufferSize(BUFFER_PTR, TENSOR_INFO, BUFFER_ID, CHECK_LOCATION())
 
#define CHECK_SUPPORTED_FUSED_ACTIVATION(OPTION, SUBGRAPH_INDEX, OPERATOR_INDEX)
 

Functions

unsigned int ComputeWrappedIndex (int idx, unsigned int numDimsIn)
 

Macro Definition Documentation

◆ ARMNN_THROW_PARSE_EXCEPTION

#define ARMNN_THROW_PARSE_EXCEPTION (   msg)
Value:
{ \
throw armnn::ParseException( static_cast<const std::stringstream&>( std::stringstream() << msg \
<< ": " \
<< CHECK_LOCATION().AsString()).str()); \
}
#define CHECK_LOCATION()
Definition: Exceptions.hpp:197

Definition at line 42 of file TfLiteParser.cpp.

Referenced by TfLiteParserImpl::OutputShapeOfReshape().

◆ CHECK_BUFFER

#define CHECK_BUFFER (   MODEL,
  BUFFER_INDEX 
)    CheckBuffer(MODEL, BUFFER_INDEX, CHECK_LOCATION())

Definition at line 260 of file TfLiteParser.cpp.

Referenced by TfLiteParserImpl::GetBuffer().

◆ CHECK_BUFFER_SIZE

#define CHECK_BUFFER_SIZE (   BUFFER_PTR,
  TENSOR_INFO,
  BUFFER_ID 
)    CheckBufferSize(BUFFER_PTR, TENSOR_INFO, BUFFER_ID, CHECK_LOCATION())

Definition at line 287 of file TfLiteParser.cpp.

Referenced by TfLiteParserImpl::GetBuffer().

◆ CHECK_MODEL

◆ CHECK_SUBGRAPH

◆ CHECK_SUPPORTED_FUSED_ACTIVATION

#define CHECK_SUPPORTED_FUSED_ACTIVATION (   OPTION,
  SUBGRAPH_INDEX,
  OPERATOR_INDEX 
)
Value:
do { \
if (IsActivationSupported(OPTION->fused_activation_function) == false) \
{ \
throw ParseException( \
fmt::format("TfLite parser doesn't suppport fused activation: " \
"{}/{} in {} subgraph:{} operator:{} at {}", \
OPTION->fused_activation_function, \
tflite::EnumNameActivationFunctionType(\
OPTION->fused_activation_function), \
__func__, \
SUBGRAPH_INDEX, \
OPERATOR_INDEX, \
CHECK_LOCATION().FileLine())); \
} \
} while(false)
bool IsActivationSupported(const BackendId &backend, const TensorInfo &input, const TensorInfo &output, const ActivationDescriptor &descriptor, char *reasonIfUnsupported=nullptr, size_t reasonIfUnsupportedMaxLength=1024)
Deprecated in favor of IBackend and ILayerSupport interfaces.
#define CHECK_LOCATION()
Definition: Exceptions.hpp:197

Definition at line 308 of file TfLiteParser.cpp.

Referenced by TfLiteParserImpl::CreateNetworkFromBinary(), and TfLiteParserImpl::OutputShapeOfReshape().

◆ CHECK_TENSOR

#define CHECK_TENSOR (   MODEL,
  SUBGRAPH_INDEX,
  TENSOR_INDEX 
)    CheckTensor(MODEL, SUBGRAPH_INDEX, TENSOR_INDEX, CHECK_LOCATION())

◆ CHECK_TENSOR_PTR

#define CHECK_TENSOR_PTR (   TENSOR_PTR)    CheckTensorPtr(TENSOR_PTR, CHECK_LOCATION())

Definition at line 225 of file TfLiteParser.cpp.

Referenced by TfLiteParserImpl::GetBuffer().