1 #include "tvm/runtime/c_runtime_api.h" 2 #include "tvm/runtime/c_backend_api.h" 8 void* arg0 = (((
TVMValue*)args)[0].v_handle);
9 int32_t arg0_code = (( int32_t*)arg_type_ids)[0];
10 void* arg1 = (((
TVMValue*)args)[1].v_handle);
11 int32_t arg1_code = (( int32_t*)arg_type_ids)[1];
12 void* arg2 = (((
TVMValue*)args)[2].v_handle);
13 int32_t arg2_code = (( int32_t*)arg_type_ids)[2];
14 float* placeholder = (
float*)(((
TVMArray*)arg0)[0].data);
16 int64_t* arg0_strides = (int64_t*)(((
TVMArray*)arg0)[0].strides);
17 int32_t dev_type = (((
TVMArray*)arg0)[0].ctx.device_type);
18 int32_t dev_id = (((
TVMArray*)arg0)[0].ctx.device_id);
19 float* placeholder1 = (
float*)(((
TVMArray*)arg1)[0].data);
20 int64_t* arg1_shape = (int64_t*)(((
TVMArray*)arg1)[0].shape);
21 int64_t* arg1_strides = (int64_t*)(((
TVMArray*)arg1)[0].strides);
22 float* T_multiply = (
float*)(((
TVMArray*)arg2)[0].data);
23 int64_t* arg2_shape = (int64_t*)(((
TVMArray*)arg2)[0].shape);
24 int64_t* arg2_strides = (int64_t*)(((
TVMArray*)arg2)[0].strides);
25 if (!(arg0_strides ==
NULL)) {
27 if (!(arg1_strides ==
NULL)) {
29 if (!(arg2_strides ==
NULL)) {
31 for (int32_t ax1 = 0; ax1 < 8; ++ax1) {
32 T_multiply[ax1] = (placeholder[ax1] * placeholder1[ax1]);
TVM_DLL int32_t fused_multiply(void *args, void *arg_type_ids, int32_t num_args)
Union type of values being passed through API and function calls.
Plain C Tensor object, does not manage memory.