1  /* { dg-skip-if "too many arguments in function call" { bpf-*-* } } */
       2  
       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