// File: kernel.cpp
#include "loop_001.h"
#include <stdint.h>

extern "C" void inner_loop_001(struct loop_001_data *data) {
    float *a = data->a;
    float *b = data->b;
    int n = data->n;
    double res = 0.0;
    for (int i = 0; i < n; i++) {
        res += (double)a[i] * (double)b[i];
    }
    data->res = (float)res;
}