Skip to content
Snippets Groups Projects
Select Git revision
  • 497a4fc5ffefd8d202041c4126acb7533e78b16f
  • master default protected
  • 67-multithreading-is-plattform-dependent
  • cmake_windows
  • v0.8.4
  • v0.8.3
  • v0.8.2
  • v0.8
  • v0.7
  • v0.6
  • v0.5-alpha
  • v0.4
12 results

MainWindow.cpp

Blame
  • intest 1.24 KiB
    define(`complex_doublesveadd', 
    `	svfloat64_t re = svadd_f64_z(ig, $1.v0, $2.v0);
    	svfloat64_t im = svadd_f64_z(ig, $1.v1, $2.v1);
    	svfloat64x2_t res = {re, im};
    
    	svst2_f64(ig, (double *) &$3, res);	
    ')
    
    define(`complex_doublesvesub', 
    `	svfloat64_t re = svsub_f64_z(ig, $1.v0, $2.v0);
    	svfloat64_t im = svsub_f64_z(ig, $1.v1, $2.v1);
    	svfloat64x2_t res = {re, im};
    
    	svst2_f64(ig, (double *) &$3, res);	
    ')
    
    define(`complex_doublesvemul', 
    `	svfloat64_t retemp = svmul_f64_z(ig, $1.v0, $2.v0);
    	svfloat64_t imtemp = svmul_f64_z(ig, $1.v0, $2.v1);
    	svfloat64_t re = svmls_f64_z(ig, retemp, $1.v1, $2.v1); 
    	svfloat64_t im = svmla_f64_z(ig, imtemp, $1.v1, $2.v0); 
    	svfloat64x2_t res = {re, im};
    
    	svst2_f64(ig, (double *) &$3, res);	
    ')
    
    define(`complex_doublesvediv', 
    `
    	svfloat64_t retemp = svmul_f64_z(ig, $1.v0, $2.v0);
    	svfloat64_t imtemp = svmul_f64_z(ig, $1.v1, $2.v0);
    	svfloat64_t re1 = svmla_f64_z(ig, retemp, $1.v1, $2.v1); 
    	svfloat64_t im1 = svmla_f64_z(ig, retemp, $1.v0, $2.v1); 
    	svfloat64_t denom = svadd_f64_z(ig, svmul_f64_z(ig, $2.v0, $2.v0), svmul_f64_z(ig, $2.v1, $2.v1));
    	svfloat64_t re = svdiv_f64_z(ig, re1, denom);
    	svfloat64_t im = svdiv_f64_z(ig, im1, denom);
    	svfloat64x2_t res = {re, im};
    
    	svst2_f64(ig, (double *) &$3, res);	
    ')