#include <stdlib.h> #include <stdio.h> #include <complex.h> #include <arm_sve.h> typedef double _Complex dcomplex; dcomplex a; dcomplex *x, *z, *c; int main(int argc, char* argv[]) { unsigned long j, n; j = 0; n = 16; x = (dcomplex*) calloc(sizeof(dcomplex), n); //y = (dcomplex*) calloc(sizeof(dcomplex), n); dcomplex y = 1 + 1 * I; c = (dcomplex*) calloc(sizeof(dcomplex), n); a = 0.1; for (j = 0; j < n; j++) x[j] = j + j * I; printf("x= %f %f %f %f %f %f\n", creal(x[0]), cimag(x[0]), creal(x[1]), cimag(x[1]), creal(x[2]), cimag(x[2])); //printf("y= %f %f %f %f %f %f\n", creal(y[0]), cimag(y[0]), creal(y[1]), cimag(y[1]), creal(y[2]), cimag(y[2])); printf("y= %f %f", creal(y), cimag(y)); printf("c= %f %f %f %f %f %f\n", creal(c[0]), cimag(c[0]), creal(c[1]), cimag(c[1]), creal(c[2]), cimag(c[2])); printf("complex double product"); svedef(x, complex_double, n) //vedef(y, complex_double, n) sveasmfor( c = x * y) for (j = 0; j < n; j++) printf("%f %f \n", creal(c[j]), cimag(c[j])); //printf("%f %f %f %f %f %f\n", c[0], c[1], c[2], c[3], c[4], c[5]); //printf("n= %d ", n); //n=n*1; return 0; }