• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // clang-format off
2 // Generated file (from: pad_quant8.mod.py). Do not edit
3 // Create the model
createTestModel()4 Model createTestModel() {
5     const std::vector<Operand> operands = {
6         {
7             .type = OperandType::TENSOR_QUANT8_ASYMM,
8             .dimensions = {1, 2, 3, 1},
9             .numberOfConsumers = 1,
10             .scale = 2.3f,
11             .zeroPoint = 0,
12             .lifetime = OperandLifeTime::MODEL_INPUT,
13             .location = {.poolIndex = 0, .offset = 0, .length = 0},
14         },
15         {
16             .type = OperandType::TENSOR_INT32,
17             .dimensions = {4, 2},
18             .numberOfConsumers = 1,
19             .scale = 0.0f,
20             .zeroPoint = 0,
21             .lifetime = OperandLifeTime::CONSTANT_COPY,
22             .location = {.poolIndex = 0, .offset = 0, .length = 32},
23         },
24         {
25             .type = OperandType::TENSOR_QUANT8_ASYMM,
26             .dimensions = {1, 4, 7, 1},
27             .numberOfConsumers = 0,
28             .scale = 2.3f,
29             .zeroPoint = 0,
30             .lifetime = OperandLifeTime::MODEL_OUTPUT,
31             .location = {.poolIndex = 0, .offset = 0, .length = 0},
32         }
33     };
34 
35     const std::vector<Operation> operations = {
36         {
37             .type = OperationType::PAD,
38             .inputs = {0, 1},
39             .outputs = {2},
40         }
41     };
42 
43     const std::vector<uint32_t> inputIndexes = {0};
44     const std::vector<uint32_t> outputIndexes = {2};
45     std::vector<uint8_t> operandValues = {
46       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
47     };
48     const std::vector<hidl_memory> pools = {};
49 
50     return {
51         .operands = operands,
52         .operations = operations,
53         .inputIndexes = inputIndexes,
54         .outputIndexes = outputIndexes,
55         .operandValues = operandValues,
56         .pools = pools,
57     };
58 }
59 
is_ignored(int i)60 inline bool is_ignored(int i) {
61   static std::set<int> ignore = {};
62   return ignore.find(i) != ignore.end();
63 }
64 
65 // Create the model
createTestModel_dynamic_output_shape()66 Model createTestModel_dynamic_output_shape() {
67     const std::vector<Operand> operands = {
68         {
69             .type = OperandType::TENSOR_QUANT8_ASYMM,
70             .dimensions = {1, 2, 3, 1},
71             .numberOfConsumers = 1,
72             .scale = 2.3f,
73             .zeroPoint = 0,
74             .lifetime = OperandLifeTime::MODEL_INPUT,
75             .location = {.poolIndex = 0, .offset = 0, .length = 0},
76         },
77         {
78             .type = OperandType::TENSOR_INT32,
79             .dimensions = {4, 2},
80             .numberOfConsumers = 1,
81             .scale = 0.0f,
82             .zeroPoint = 0,
83             .lifetime = OperandLifeTime::CONSTANT_COPY,
84             .location = {.poolIndex = 0, .offset = 0, .length = 32},
85         },
86         {
87             .type = OperandType::TENSOR_QUANT8_ASYMM,
88             .dimensions = {0, 0, 0, 0},
89             .numberOfConsumers = 0,
90             .scale = 2.3f,
91             .zeroPoint = 0,
92             .lifetime = OperandLifeTime::MODEL_OUTPUT,
93             .location = {.poolIndex = 0, .offset = 0, .length = 0},
94         }
95     };
96 
97     const std::vector<Operation> operations = {
98         {
99             .type = OperationType::PAD,
100             .inputs = {0, 1},
101             .outputs = {2},
102         }
103     };
104 
105     const std::vector<uint32_t> inputIndexes = {0};
106     const std::vector<uint32_t> outputIndexes = {2};
107     std::vector<uint8_t> operandValues = {
108       0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
109     };
110     const std::vector<hidl_memory> pools = {};
111 
112     return {
113         .operands = operands,
114         .operations = operations,
115         .inputIndexes = inputIndexes,
116         .outputIndexes = outputIndexes,
117         .operandValues = operandValues,
118         .pools = pools,
119     };
120 }
121 
is_ignored_dynamic_output_shape(int i)122 inline bool is_ignored_dynamic_output_shape(int i) {
123   static std::set<int> ignore = {};
124   return ignore.find(i) != ignore.end();
125 }
126 
127