Генерация Си кода из Engee Function
Author
/*!
BlockType = :EngeeFunction!AddDemo
TargetLang = :C
*/
//! @Toplevel
//! sz = prod(input_size(1))
//! vector_width = convert(Int32, sz * (input(1).ty.bits)/8)
//! vType = "$(input_datatype_name(1))_v4_t"
typedef $(input_datatype_name(1)) $vType __attribute__ ((vector_size ($(vector_width))));
//! @Definitions
int vlen = $(sz);
$(vType) add1,add2,sum;
static $(output_datatype_name(1)) $(output(1))[$(prod(input_size(1)))];
//! @Step
memcpy(&add1,&$(input(1)), vlen * sizeof($(input_datatype_name(1))));
memcpy(&add2,&$(input(1)), vlen * sizeof($(input_datatype_name(1))));
sum = add1 + add2;
memcpy(&$(output(1)), &sum, vlen * sizeof($(input_datatype_name(1))));