7-01.c

来自「用于进行gcc测试」· C语言 代码 · 共 37 行

C
37
字号
/* { dg-do compile } */#include <altivec.h>extern vector signed short image[];extern vector signed short band[];#define load(a,b) (a[b])#define store(v,a,b) (a[b]) = (v)voidhaar (vector signed char a, vector signed char b, vector signed char c,      vector signed char d, unsigned int N, int XX){  unsigned int i;  vector unsigned char high, low;  vector signed int zero = ((vector signed int){0,0,0,0});  for (i = 0; i < N; i++) {    high = (vector unsigned char) (vec_vmrghh (load(image, i+XX),					       load(image, i)));    low = (vector unsigned char) (vec_vmrglh (load(image, i+XX),					      load(image, i)));    store (vec_vpkswss (vec_vmsummbm (a, high, zero),			vec_vmsummbm (a, low, zero)),	   band, i);    store (vec_vpkswss (vec_vmsummbm (b, high, zero),			vec_vmsummbm (b, low, zero)),	   band, i+1);    store(vec_vpkswss (vec_vmsummbm (c, high, zero),		       vec_vmsummbm (c, low, zero)),	  band, i+2);    store(vec_vpkswss (vec_vmsummbm (d, high, zero),		       vec_vmsummbm (d, low, zero)),	  band, i+3);  }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?