// Generated from slice.mod.py // DO NOT EDIT // clang-format off #include "TestHarness.h" using namespace test_helper; // NOLINT(google-build-using-namespace) namespace generated_tests::slice { const TestModel& get_test_model() { static TestModel model = { .main = { .operands = {{ // input .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f}) }, { // begin .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1}) }, { // size .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // output .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f, 3.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model = TestModelManager::get().add("slice", get_test_model()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_all_inputs_as_internal() { static TestModel model = { .main = { .operands = {{ // input .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // begin .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1}) }, { // size .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // output .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f, 3.0f}) }, { // input_new .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f}) }, { // placeholder .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.0f}) }, { // param15 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_all_inputs_as_internal = TestModelManager::get().add("slice_all_inputs_as_internal", get_test_model_all_inputs_as_internal()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed() { static TestModel model = { .main = { .operands = {{ // input .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f}) }, { // begin .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1}) }, { // size .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // output .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f, 3.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed = TestModelManager::get().add("slice_relaxed", get_test_model_relaxed()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_all_inputs_as_internal() { static TestModel model = { .main = { .operands = {{ // input .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // begin .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1}) }, { // size .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // output .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f, 3.0f}) }, { // input_new .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f}) }, { // placeholder1 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.0f}) }, { // param16 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_all_inputs_as_internal = TestModelManager::get().add("slice_relaxed_all_inputs_as_internal", get_test_model_relaxed_all_inputs_as_internal()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16() { static TestModel model = { .main = { .operands = {{ // input .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}) }, { // begin .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1}) }, { // size .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // output .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({2.0f, 3.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16 = TestModelManager::get().add("slice_float16", get_test_model_float16()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_all_inputs_as_internal() { static TestModel model = { .main = { .operands = {{ // input .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({}) }, { // begin .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1}) }, { // size .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // output .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({2.0f, 3.0f}) }, { // input_new .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}) }, { // placeholder2 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({0.0f}) }, { // param17 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_all_inputs_as_internal = TestModelManager::get().add("slice_float16_all_inputs_as_internal", get_test_model_float16_all_inputs_as_internal()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_2() { static TestModel model = { .main = { .operands = {{ // input1 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f}) }, { // begin1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0}) }, { // size1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 2}) }, { // output1 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4.0f, 5.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_2 = TestModelManager::get().add("slice_2", get_test_model_2()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_all_inputs_as_internal_2() { static TestModel model = { .main = { .operands = {{ // input1 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // begin1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0}) }, { // size1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 2}) }, { // output1 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4.0f, 5.0f}) }, { // input1_new .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f}) }, { // placeholder3 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.0f}) }, { // param18 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_all_inputs_as_internal_2 = TestModelManager::get().add("slice_all_inputs_as_internal_2", get_test_model_all_inputs_as_internal_2()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_2() { static TestModel model = { .main = { .operands = {{ // input1 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f}) }, { // begin1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0}) }, { // size1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 2}) }, { // output1 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4.0f, 5.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_2 = TestModelManager::get().add("slice_relaxed_2", get_test_model_relaxed_2()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_all_inputs_as_internal_2() { static TestModel model = { .main = { .operands = {{ // input1 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // begin1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0}) }, { // size1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 2}) }, { // output1 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4.0f, 5.0f}) }, { // input1_new .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f}) }, { // placeholder4 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.0f}) }, { // param19 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_all_inputs_as_internal_2 = TestModelManager::get().add("slice_relaxed_all_inputs_as_internal_2", get_test_model_relaxed_all_inputs_as_internal_2()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_2() { static TestModel model = { .main = { .operands = {{ // input1 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {2, 3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f}) }, { // begin1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0}) }, { // size1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 2}) }, { // output1 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {1, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({4.0f, 5.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_2 = TestModelManager::get().add("slice_float16_2", get_test_model_float16_2()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_all_inputs_as_internal_2() { static TestModel model = { .main = { .operands = {{ // input1 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {2, 3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({}) }, { // begin1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0}) }, { // size1 .type = TestOperandType::TENSOR_INT32, .dimensions = {2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 2}) }, { // output1 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {1, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({4.0f, 5.0f}) }, { // input1_new .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {2, 3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f}) }, { // placeholder5 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({0.0f}) }, { // param20 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_all_inputs_as_internal_2 = TestModelManager::get().add("slice_float16_all_inputs_as_internal_2", get_test_model_float16_all_inputs_as_internal_2()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_3() { static TestModel model = { .main = { .operands = {{ // input2 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }, { // begin2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0, 0, 0}) }, { // size2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 3, 2}) }, { // output2 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_3 = TestModelManager::get().add("slice_3", get_test_model_3()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_all_inputs_as_internal_3() { static TestModel model = { .main = { .operands = {{ // input2 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // begin2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0, 0, 0}) }, { // size2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 3, 2}) }, { // output2 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }, { // input2_new .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }, { // placeholder6 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.0f}) }, { // param21 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_all_inputs_as_internal_3 = TestModelManager::get().add("slice_all_inputs_as_internal_3", get_test_model_all_inputs_as_internal_3()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_3() { static TestModel model = { .main = { .operands = {{ // input2 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }, { // begin2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0, 0, 0}) }, { // size2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 3, 2}) }, { // output2 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_3 = TestModelManager::get().add("slice_relaxed_3", get_test_model_relaxed_3()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_all_inputs_as_internal_3() { static TestModel model = { .main = { .operands = {{ // input2 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // begin2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0, 0, 0}) }, { // size2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 3, 2}) }, { // output2 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }, { // input2_new .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {2, 3, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }, { // placeholder7 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.0f}) }, { // param22 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_all_inputs_as_internal_3 = TestModelManager::get().add("slice_relaxed_all_inputs_as_internal_3", get_test_model_relaxed_all_inputs_as_internal_3()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_3() { static TestModel model = { .main = { .operands = {{ // input2 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {2, 3, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }, { // begin2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0, 0, 0}) }, { // size2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 3, 2}) }, { // output2 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {2, 3, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_3 = TestModelManager::get().add("slice_float16_3", get_test_model_float16_3()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_all_inputs_as_internal_3() { static TestModel model = { .main = { .operands = {{ // input2 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {2, 3, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({}) }, { // begin2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0, 0, 0}) }, { // size2 .type = TestOperandType::TENSOR_INT32, .dimensions = {3}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 3, 2}) }, { // output2 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {2, 3, 2}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }, { // input2_new .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {2, 3, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f, 10.0f, 11.0f, 12.0f}) }, { // placeholder8 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({0.0f}) }, { // param23 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_all_inputs_as_internal_3 = TestModelManager::get().add("slice_float16_all_inputs_as_internal_3", get_test_model_float16_all_inputs_as_internal_3()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_4() { static TestModel model = { .main = { .operands = {{ // input3 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f}) }, { // begin3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 1, 1, 1}) }, { // output3 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {3, 1, 1, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f, 3.0f, 4.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_4 = TestModelManager::get().add("slice_4", get_test_model_4()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_all_inputs_as_internal_4() { static TestModel model = { .main = { .operands = {{ // input3 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // begin3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 1, 1, 1}) }, { // output3 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {3, 1, 1, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f, 3.0f, 4.0f}) }, { // input3_new .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f}) }, { // placeholder9 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.0f}) }, { // param24 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_all_inputs_as_internal_4 = TestModelManager::get().add("slice_all_inputs_as_internal_4", get_test_model_all_inputs_as_internal_4()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_4() { static TestModel model = { .main = { .operands = {{ // input3 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f}) }, { // begin3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 1, 1, 1}) }, { // output3 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {3, 1, 1, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f, 3.0f, 4.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_4 = TestModelManager::get().add("slice_relaxed_4", get_test_model_relaxed_4()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_all_inputs_as_internal_4() { static TestModel model = { .main = { .operands = {{ // input3 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // begin3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 1, 1, 1}) }, { // output3 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {3, 1, 1, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f, 3.0f, 4.0f}) }, { // input3_new .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {4, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 2.0f, 3.0f, 4.0f}) }, { // placeholder10 .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.0f}) }, { // param25 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_all_inputs_as_internal_4 = TestModelManager::get().add("slice_relaxed_all_inputs_as_internal_4", get_test_model_relaxed_all_inputs_as_internal_4()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_4() { static TestModel model = { .main = { .operands = {{ // input3 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {4, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}) }, { // begin3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 1, 1, 1}) }, { // output3 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {3, 1, 1, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({2.0f, 3.0f, 4.0f}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_4 = TestModelManager::get().add("slice_float16_4", get_test_model_float16_4()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_all_inputs_as_internal_4() { static TestModel model = { .main = { .operands = {{ // input3 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {4, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({}) }, { // begin3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size3 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 1, 1, 1}) }, { // output3 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {3, 1, 1, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({2.0f, 3.0f, 4.0f}) }, { // input3_new .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {4, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f, 2.0f, 3.0f, 4.0f}) }, { // placeholder11 .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({0.0f}) }, { // param26 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_all_inputs_as_internal_4 = TestModelManager::get().add("slice_float16_all_inputs_as_internal_4", get_test_model_float16_all_inputs_as_internal_4()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_5() { static TestModel model = { .main = { .operands = {{ // input4 .type = TestOperandType::TENSOR_INT32, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin4 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size4 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 3, 1}) }, { // output4 .type = TestOperandType::TENSOR_INT32, .dimensions = {1, 1, 3, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_5 = TestModelManager::get().add("slice_5", get_test_model_5()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_5() { static TestModel model = { .main = { .operands = {{ // input4 .type = TestOperandType::TENSOR_INT32, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin4 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size4 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 3, 1}) }, { // output4 .type = TestOperandType::TENSOR_INT32, .dimensions = {1, 1, 3, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_5 = TestModelManager::get().add("slice_relaxed_5", get_test_model_relaxed_5()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_5() { static TestModel model = { .main = { .operands = {{ // input4 .type = TestOperandType::TENSOR_INT32, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin4 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size4 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 3, 1}) }, { // output4 .type = TestOperandType::TENSOR_INT32, .dimensions = {1, 1, 3, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_5 = TestModelManager::get().add("slice_float16_5", get_test_model_float16_5()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_6() { static TestModel model = { .main = { .operands = {{ // input5 .type = TestOperandType::TENSOR_INT32, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin5 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size5 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, 3, 1}) }, { // output5 .type = TestOperandType::TENSOR_INT32, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_6 = TestModelManager::get().add("slice_6", get_test_model_6()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_6() { static TestModel model = { .main = { .operands = {{ // input5 .type = TestOperandType::TENSOR_INT32, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin5 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size5 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, 3, 1}) }, { // output5 .type = TestOperandType::TENSOR_INT32, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_6 = TestModelManager::get().add("slice_relaxed_6", get_test_model_relaxed_6()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_6() { static TestModel model = { .main = { .operands = {{ // input5 .type = TestOperandType::TENSOR_INT32, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin5 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size5 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, 3, 1}) }, { // output5 .type = TestOperandType::TENSOR_INT32, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_6 = TestModelManager::get().add("slice_float16_6", get_test_model_float16_6()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_7() { static TestModel model = { .main = { .operands = {{ // input6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, 3, 1}) }, { // output6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_7 = TestModelManager::get().add("slice_7", get_test_model_7()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_all_inputs_as_internal_5() { static TestModel model = { .main = { .operands = {{ // input6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // begin6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, 3, 1}) }, { // output6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }, { // input6_new .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // placeholder12 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({128}) }, { // param27 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_all_inputs_as_internal_5 = TestModelManager::get().add("slice_all_inputs_as_internal_5", get_test_model_all_inputs_as_internal_5()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_7() { static TestModel model = { .main = { .operands = {{ // input6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, 3, 1}) }, { // output6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_7 = TestModelManager::get().add("slice_relaxed_7", get_test_model_relaxed_7()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_all_inputs_as_internal_5() { static TestModel model = { .main = { .operands = {{ // input6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // begin6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, 3, 1}) }, { // output6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }, { // input6_new .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // placeholder13 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({128}) }, { // param28 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_all_inputs_as_internal_5 = TestModelManager::get().add("slice_relaxed_all_inputs_as_internal_5", get_test_model_relaxed_all_inputs_as_internal_5()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_7() { static TestModel model = { .main = { .operands = {{ // input6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, 3, 1}) }, { // output6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_7 = TestModelManager::get().add("slice_float16_7", get_test_model_float16_7()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_all_inputs_as_internal_5() { static TestModel model = { .main = { .operands = {{ // input6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // begin6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size6 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, 3, 1}) }, { // output6 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }, { // input6_new .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // placeholder14 .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {1}, .numberOfConsumers = 1, .scale = 2.0f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({128}) }, { // param29 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }}, .operations = {{ .type = TestOperationType::ADD, .inputs = {4, 5, 6}, .outputs = {0} }, { .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {1, 2, 4}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_all_inputs_as_internal_5 = TestModelManager::get().add("slice_float16_all_inputs_as_internal_5", get_test_model_float16_all_inputs_as_internal_5()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_8() { static TestModel model = { .main = { .operands = {{ // input7 .type = TestOperandType::TENSOR_INT32, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin7 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size7 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, -1, 1}) }, { // output7 .type = TestOperandType::TENSOR_INT32, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_8 = TestModelManager::get().add("slice_8", get_test_model_8()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_relaxed_8() { static TestModel model = { .main = { .operands = {{ // input7 .type = TestOperandType::TENSOR_INT32, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin7 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size7 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, -1, 1}) }, { // output7 .type = TestOperandType::TENSOR_INT32, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_relaxed_8 = TestModelManager::get().add("slice_relaxed_8", get_test_model_relaxed_8()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_float16_8() { static TestModel model = { .main = { .operands = {{ // input7 .type = TestOperandType::TENSOR_INT32, .dimensions = {3, 2, 3, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 1, 1, 2, 2, 2, 3, 3, 3, 4, 4, 4, 5, 5, 5, 6, 6, 6}) }, { // begin7 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1, 0, 0, 0}) }, { // size7 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2, 1, -1, 1}) }, { // output7 .type = TestOperandType::TENSOR_INT32, .dimensions = {2, 1, 3, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({3, 3, 3, 5, 5, 5}) }}, .operations = {{ .type = TestOperationType::SLICE, .inputs = {0, 1, 2}, .outputs = {3} }}, .inputIndexes = {0, 1, 2}, .outputIndexes = {3} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_float16_8 = TestModelManager::get().add("slice_float16_8", get_test_model_float16_8()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_zero_sized() { static TestModel model = { .main = { // zero_sized .operands = {{ // scores .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.9f, 0.1f}) }, { // roi .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1, 8}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 1.0f, 10.0f, 10.0f, 0.0f, 0.0f, 10.0f, 10.0f}) }, { // param .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }, { // param1 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.3f}) }, { // param2 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({-1}) }, { // param3 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }, { // param4 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.4f}) }, { // param5 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f}) }, { // param6 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.3f}) }, { // scoresOut .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // roiOut .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {0, 4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // classesOut .type = TestOperandType::TENSOR_INT32, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // batchSplitOut .type = TestOperandType::TENSOR_INT32, .dimensions = {0}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // in .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f}) }, { // param7 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // param8 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // param9 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f}) }, { // param10 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f}) }, { // param11 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4}) }, { // param12 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4}) }, { // layout .type = TestOperandType::BOOL, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({false}) }, { // featureMap .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {0, 2, 2, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // param13 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0, 1, 1, 0}) }, { // param14 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({-1, 1, -1, 1}) }, { // out .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {0, 1, 1, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }}, .operations = {{ .type = TestOperationType::BOX_WITH_NMS_LIMIT, .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, .outputs = {9, 10, 11, 12} }, { .type = TestOperationType::ROI_ALIGN, .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, .outputs = {21} }, { .type = TestOperationType::SLICE, .inputs = {21, 22, 23}, .outputs = {24} }}, .inputIndexes = {13}, .outputIndexes = {9, 11, 24} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_zero_sized = TestModelManager::get().add("slice_zero_sized", get_test_model_zero_sized()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_zero_sized_relaxed() { static TestModel model = { .main = { // zero_sized .operands = {{ // scores .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.9f, 0.1f}) }, { // roi .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1, 8}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f, 1.0f, 10.0f, 10.0f, 0.0f, 0.0f, 10.0f, 10.0f}) }, { // param .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }, { // param1 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.3f}) }, { // param2 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({-1}) }, { // param3 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }, { // param4 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.4f}) }, { // param5 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f}) }, { // param6 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.3f}) }, { // scoresOut .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // roiOut .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {0, 4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // classesOut .type = TestOperandType::TENSOR_INT32, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // batchSplitOut .type = TestOperandType::TENSOR_INT32, .dimensions = {0}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // in .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {1, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f}) }, { // param7 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // param8 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // param9 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f}) }, { // param10 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f}) }, { // param11 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4}) }, { // param12 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4}) }, { // layout .type = TestOperandType::BOOL, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({false}) }, { // featureMap .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {0, 2, 2, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // param13 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0, 1, 1, 0}) }, { // param14 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({-1, 1, -1, 1}) }, { // out .type = TestOperandType::TENSOR_FLOAT32, .dimensions = {0, 1, 1, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }}, .operations = {{ .type = TestOperationType::BOX_WITH_NMS_LIMIT, .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, .outputs = {9, 10, 11, 12} }, { .type = TestOperationType::ROI_ALIGN, .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, .outputs = {21} }, { .type = TestOperationType::SLICE, .inputs = {21, 22, 23}, .outputs = {24} }}, .inputIndexes = {13}, .outputIndexes = {9, 11, 24} }, .referenced = {}, .isRelaxed = true, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::UNKNOWN }; return model; } const auto dummy_test_model_zero_sized_relaxed = TestModelManager::get().add("slice_zero_sized_relaxed", get_test_model_zero_sized_relaxed()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_zero_sized_quant8() { static TestModel model = { .main = { // zero_sized .operands = {{ // scores .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {1, 2}, .numberOfConsumers = 1, .scale = 0.1f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({137, 129}) }, { // roi .type = TestOperandType::TENSOR_QUANT16_ASYMM, .dimensions = {1, 8}, .numberOfConsumers = 1, .scale = 0.125f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({8, 8, 80, 80, 0, 0, 80, 80}) }, { // param .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }, { // param1 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.3f}) }, { // param2 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({-1}) }, { // param3 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }, { // param4 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.4f}) }, { // param5 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({1.0f}) }, { // param6 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0.3f}) }, { // scoresOut .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.1f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // roiOut .type = TestOperandType::TENSOR_QUANT16_ASYMM, .dimensions = {0, 4}, .numberOfConsumers = 1, .scale = 0.125f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // classesOut .type = TestOperandType::TENSOR_INT32, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // batchSplitOut .type = TestOperandType::TENSOR_INT32, .dimensions = {0}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // in .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {1, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.1f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({138}) }, { // param7 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // param8 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // param9 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f}) }, { // param10 .type = TestOperandType::FLOAT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2.0f}) }, { // param11 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4}) }, { // param12 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4}) }, { // layout .type = TestOperandType::BOOL, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({false}) }, { // featureMap .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {0, 2, 2, 1}, .numberOfConsumers = 1, .scale = 0.1f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // param13 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0, 1, 1, 0}) }, { // param14 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({-1, 1, -1, 1}) }, { // out .type = TestOperandType::TENSOR_QUANT8_ASYMM, .dimensions = {0, 1, 1, 1}, .numberOfConsumers = 0, .scale = 0.1f, .zeroPoint = 128, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }}, .operations = {{ .type = TestOperationType::BOX_WITH_NMS_LIMIT, .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, .outputs = {9, 10, 11, 12} }, { .type = TestOperationType::ROI_ALIGN, .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, .outputs = {21} }, { .type = TestOperationType::SLICE, .inputs = {21, 22, 23}, .outputs = {24} }}, .inputIndexes = {13}, .outputIndexes = {9, 11, 24} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_zero_sized_quant8 = TestModelManager::get().add("slice_zero_sized_quant8", get_test_model_zero_sized_quant8()); } // namespace generated_tests::slice namespace generated_tests::slice { const TestModel& get_test_model_zero_sized_float16() { static TestModel model = { .main = { // zero_sized .operands = {{ // scores .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {1, 2}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({0.8999999761581421f, 0.10000000149011612f}) }, { // roi .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {1, 8}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f, 1.0f, 10.0f, 10.0f, 0.0f, 0.0f, 10.0f, 10.0f}) }, { // param .type = TestOperandType::TENSOR_INT32, .dimensions = {1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }, { // param1 .type = TestOperandType::FLOAT16, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({0.30000001192092896f}) }, { // param2 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({-1}) }, { // param3 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0}) }, { // param4 .type = TestOperandType::FLOAT16, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({0.4000000059604645f}) }, { // param5 .type = TestOperandType::FLOAT16, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f}) }, { // param6 .type = TestOperandType::FLOAT16, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({0.30000001192092896f}) }, { // scoresOut .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({}) }, { // roiOut .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {0, 4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({}) }, { // classesOut .type = TestOperandType::TENSOR_INT32, .dimensions = {0}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // batchSplitOut .type = TestOperandType::TENSOR_INT32, .dimensions = {0}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({}) }, { // in .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {1, 1, 1, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_INPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({1.0f}) }, { // param7 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // param8 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({2}) }, { // param9 .type = TestOperandType::FLOAT16, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({2.0f}) }, { // param10 .type = TestOperandType::FLOAT16, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({2.0f}) }, { // param11 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4}) }, { // param12 .type = TestOperandType::INT32, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({4}) }, { // layout .type = TestOperandType::BOOL, .dimensions = {}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({false}) }, { // featureMap .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {0, 2, 2, 1}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::TEMPORARY_VARIABLE, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({}) }, { // param13 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({0, 1, 1, 0}) }, { // param14 .type = TestOperandType::TENSOR_INT32, .dimensions = {4}, .numberOfConsumers = 1, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::CONSTANT_COPY, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector({-1, 1, -1, 1}) }, { // out .type = TestOperandType::TENSOR_FLOAT16, .dimensions = {0, 1, 1, 1}, .numberOfConsumers = 0, .scale = 0.0f, .zeroPoint = 0, .lifetime = TestOperandLifeTime::SUBGRAPH_OUTPUT, .channelQuant = {}, .isIgnored = false, .data = TestBuffer::createFromVector<_Float16>({}) }}, .operations = {{ .type = TestOperationType::BOX_WITH_NMS_LIMIT, .inputs = {0, 1, 2, 3, 4, 5, 6, 7, 8}, .outputs = {9, 10, 11, 12} }, { .type = TestOperationType::ROI_ALIGN, .inputs = {13, 10, 12, 14, 15, 16, 17, 18, 19, 20}, .outputs = {21} }, { .type = TestOperationType::SLICE, .inputs = {21, 22, 23}, .outputs = {24} }}, .inputIndexes = {13}, .outputIndexes = {9, 11, 24} }, .referenced = {}, .isRelaxed = false, .expectedMultinomialDistributionTolerance = 0, .expectFailure = false, .minSupportedVersion = TestHalVersion::V1_2 }; return model; } const auto dummy_test_model_zero_sized_float16 = TestModelManager::get().add("slice_zero_sized_float16", get_test_model_zero_sized_float16()); } // namespace generated_tests::slice