Home | History | Annotate | Download | only in models
      1 // clang-format off
      2 // Generated file (from: embedding_lookup.mod.py). Do not edit
      3 void CreateModel(Model *model) {
      4   OperandType type0(Type::TENSOR_INT32, {3});
      5   OperandType type1(Type::TENSOR_FLOAT32, {3, 2, 4});
      6   // Phase 1, operands
      7   auto index = model->addOperand(&type0);
      8   auto value = model->addOperand(&type1);
      9   auto output = model->addOperand(&type1);
     10   // Phase 2, operations
     11   model->addOperation(ANEURALNETWORKS_EMBEDDING_LOOKUP, {index, value}, {output});
     12   // Phase 3, inputs and outputs
     13   model->identifyInputsAndOutputs(
     14     {index, value},
     15     {output});
     16   assert(model->isValid());
     17 }
     18 
     19 inline bool is_ignored(int i) {
     20   static std::set<int> ignore = {};
     21   return ignore.find(i) != ignore.end();
     22 }
     23 
     24 void CreateModel_dynamic_output_shape(Model *model) {
     25   OperandType type0(Type::TENSOR_INT32, {3});
     26   OperandType type1(Type::TENSOR_FLOAT32, {3, 2, 4});
     27   OperandType type2(Type::TENSOR_FLOAT32, {0, 0, 0});
     28   // Phase 1, operands
     29   auto index = model->addOperand(&type0);
     30   auto value = model->addOperand(&type1);
     31   auto output = model->addOperand(&type2);
     32   // Phase 2, operations
     33   model->addOperation(ANEURALNETWORKS_EMBEDDING_LOOKUP, {index, value}, {output});
     34   // Phase 3, inputs and outputs
     35   model->identifyInputsAndOutputs(
     36     {index, value},
     37     {output});
     38   assert(model->isValid());
     39 }
     40 
     41 inline bool is_ignored_dynamic_output_shape(int i) {
     42   static std::set<int> ignore = {};
     43   return ignore.find(i) != ignore.end();
     44 }
     45 
     46