mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-02 20:24:19 +00:00
Adds symbolic min/max values for type enums. am: 9233dbedcc
am: be0b2c37e9
Change-Id: Ifab7a553768d55aa5f34b561fc9f6f8ab6e01812
This commit is contained in:
@@ -46,6 +46,18 @@ enum OperandType : @1.0::OperandType {
|
||||
TENSOR_FLOAT16 = 8,
|
||||
};
|
||||
|
||||
/**
|
||||
* The range of values in the OperandType enum.
|
||||
*
|
||||
* THE MAX VALUES MUST BE UPDATED WHEN ADDING NEW TYPES to the OperandType enum.
|
||||
*/
|
||||
enum OperandTypeRange : uint32_t {
|
||||
OPERAND_FUNDAMENTAL_MIN = 0,
|
||||
OPERAND_FUNDAMENTAL_MAX = 8,
|
||||
OPERAND_OEM_MIN = 10000,
|
||||
OPERAND_OEM_MAX = 10001,
|
||||
};
|
||||
|
||||
/**
|
||||
* Operation types.
|
||||
*
|
||||
@@ -107,6 +119,18 @@ enum OperationType : @1.1::OperationType {
|
||||
ROI_POOLING = 89,
|
||||
};
|
||||
|
||||
/**
|
||||
* The range of values in the OperationType enum.
|
||||
*
|
||||
* THE MAX VALUES MUST BE UPDATED WHEN ADDING NEW TYPES to the OperationType enum.
|
||||
*/
|
||||
enum OperationTypeRange : uint32_t {
|
||||
OPERATION_FUNDAMENTAL_MIN = 0,
|
||||
OPERATION_FUNDAMENTAL_MAX = 87,
|
||||
OPERATION_OEM_MIN = 10000,
|
||||
OPERATION_OEM_MAX = 10000,
|
||||
};
|
||||
|
||||
/**
|
||||
* Describes one operation of the model's graph.
|
||||
*/
|
||||
|
||||
@@ -128,16 +128,16 @@ static uint32_t addOperand(Model* model, OperandLifeTime lifetime) {
|
||||
|
||||
///////////////////////// VALIDATE MODEL OPERAND TYPE /////////////////////////
|
||||
|
||||
static const int32_t invalidOperandTypes[] = {
|
||||
static_cast<int32_t>(OperandType::FLOAT32) - 1, // lower bound fundamental
|
||||
static_cast<int32_t>(OperandType::TENSOR_QUANT16_ASYMM) + 1, // upper bound fundamental
|
||||
static_cast<int32_t>(OperandType::OEM) - 1, // lower bound OEM
|
||||
static_cast<int32_t>(OperandType::TENSOR_OEM_BYTE) + 1, // upper bound OEM
|
||||
static const uint32_t invalidOperandTypes[] = {
|
||||
static_cast<uint32_t>(OperandTypeRange::OPERAND_FUNDAMENTAL_MIN) - 1,
|
||||
static_cast<uint32_t>(OperandTypeRange::OPERAND_FUNDAMENTAL_MAX) + 1,
|
||||
static_cast<uint32_t>(OperandTypeRange::OPERAND_OEM_MIN) - 1,
|
||||
static_cast<uint32_t>(OperandTypeRange::OPERAND_OEM_MAX) + 1,
|
||||
};
|
||||
|
||||
static void mutateOperandTypeTest(const sp<IDevice>& device, const Model& model) {
|
||||
for (size_t operand = 0; operand < model.operands.size(); ++operand) {
|
||||
for (int32_t invalidOperandType : invalidOperandTypes) {
|
||||
for (uint32_t invalidOperandType : invalidOperandTypes) {
|
||||
const std::string message = "mutateOperandTypeTest: operand " +
|
||||
std::to_string(operand) + " set to value " +
|
||||
std::to_string(invalidOperandType);
|
||||
@@ -329,16 +329,16 @@ static void mutateOperationOperandTypeTest(const sp<IDevice>& device, const Mode
|
||||
|
||||
///////////////////////// VALIDATE MODEL OPERATION TYPE /////////////////////////
|
||||
|
||||
static const int32_t invalidOperationTypes[] = {
|
||||
static_cast<int32_t>(OperationType::ADD) - 1, // lower bound fundamental
|
||||
static_cast<int32_t>(OperationType::TRANSPOSE) + 1, // upper bound fundamental
|
||||
static_cast<int32_t>(OperationType::OEM_OPERATION) - 1, // lower bound OEM
|
||||
static_cast<int32_t>(OperationType::OEM_OPERATION) + 1, // upper bound OEM
|
||||
static const uint32_t invalidOperationTypes[] = {
|
||||
static_cast<uint32_t>(OperationTypeRange::OPERATION_FUNDAMENTAL_MIN) - 1,
|
||||
static_cast<uint32_t>(OperationTypeRange::OPERATION_FUNDAMENTAL_MAX) + 1,
|
||||
static_cast<uint32_t>(OperationTypeRange::OPERATION_OEM_MIN) - 1,
|
||||
static_cast<uint32_t>(OperationTypeRange::OPERATION_OEM_MAX) + 1,
|
||||
};
|
||||
|
||||
static void mutateOperationTypeTest(const sp<IDevice>& device, const Model& model) {
|
||||
for (size_t operation = 0; operation < model.operations.size(); ++operation) {
|
||||
for (int32_t invalidOperationType : invalidOperationTypes) {
|
||||
for (uint32_t invalidOperationType : invalidOperationTypes) {
|
||||
const std::string message = "mutateOperationTypeTest: operation " +
|
||||
std::to_string(operation) + " set to value " +
|
||||
std::to_string(invalidOperationType);
|
||||
|
||||
Reference in New Issue
Block a user