1 2 #define DEF(TYPE) \ 3 void \ 4 foo_ ## TYPE ## _d (TYPE *a, TYPE *output) \ 5 { \ 6 int i; \ 7 for (i = 0; i < 8 / sizeof (TYPE); i++) \ 8 output[i] = *a; \ 9 } \ 10 void foo_ ## TYPE ## _q (TYPE *a, TYPE *output) \ 11 { \ 12 int i; \ 13 for (i = 0; i < 32 / sizeof (TYPE); i++) \ 14 output[i] = *a; \ 15 } 16