1 /* { dg-skip-if "too many arguments in function call" { bpf-*-* } } */
2 
f(unsigned char * src,unsigned char * dst,int num,unsigned char * pos,unsigned char * diffuse,int hasdiffuse,unsigned char * specular,int hasspecular)3 void f(unsigned char *src, unsigned char *dst, int num, unsigned char *pos, unsigned char *diffuse, int hasdiffuse, unsigned char *specular, int hasspecular) {
4     int i;
5 
6     for(i=num;i--;) {
7 	float *p = (float *) ((__SIZE_TYPE__) dst + (__SIZE_TYPE__) pos);
8         if(hasdiffuse) {
9             unsigned int *dstColor = (unsigned int *) (dst + i + (__SIZE_TYPE__) diffuse);
10             *dstColor = * (unsigned int *) ( ((__SIZE_TYPE__) src + (__SIZE_TYPE__) diffuse) + i);
11         }
12         if(hasspecular) {
13             unsigned int *dstColor = (unsigned int *) (dst + i + (__SIZE_TYPE__) specular);
14             *dstColor = * (unsigned int *) ( ((__SIZE_TYPE__) src + (__SIZE_TYPE__) specular) + i);
15         }
16     }
17 }
18 
19