static void fft16(float *vec) { float temp10, temp11, temp12, temp13, temp14, temp15, temp16, temp17, temp18, temp19, temp110, temp111, temp112, temp113, temp114, temp115; float temp20, temp21, temp22, temp23, temp24, temp25, temp26, temp27, temp28, temp29, temp210, temp211, temp212, temp213, temp214, temp215; float vec0, vec1, vec2, vec3, vec4, vec5, vec6, vec7, vec8, vec9, vec10, vec11, vec12, vec13, vec14, vec15; vec0 = vec[0] + vec[16]; vec1 = vec[1] + vec[17]; vec2 = vec[2] + vec[18]; vec3 = vec[3] + vec[19]; vec4 = vec[4] + vec[20]; vec5 = vec[5] + vec[21]; vec6 = vec[6] + vec[22]; vec7 = vec[7] + vec[23]; vec8 = vec[8] + vec[24]; vec9 = vec[9] + vec[25]; vec10 = vec[10] + vec[26]; vec11 = vec[11] + vec[27]; vec12 = vec[12] + vec[28]; vec13 = vec[13] + vec[29]; vec14 = vec[14] + vec[30]; vec15 = vec[15] + vec[31]; temp10 = vec0 + vec8; temp12 = vec0 - vec8; temp11 = vec1 + vec9; temp13 = vec1 - vec9; temp14 = vec2 + vec10; temp16 = vec2 - vec10; temp15 = vec3 + vec11; temp17 = vec3 - vec11; temp18 = vec4 + vec12; temp110 = vec4 - vec12; temp19 = vec5 + vec13; temp111 = vec5 - vec13; temp112 = vec6 + vec14; temp114 = vec6 - vec14; temp113 = vec7 + vec15; temp115 = vec7 - vec15; temp20 = temp10 + temp18; temp24 = temp10 - temp18; temp21 = temp11 + temp19; temp25 = temp11 - temp19; temp28 = temp12 - temp111; temp210 = temp12 + temp111; temp29 = temp13 + temp110; temp211 = temp13 - temp110; temp22 = temp14 + temp112; temp27 = temp14 - temp112; temp23 = temp15 + temp113; temp26 = temp113- temp15; temp11 = temp16 + temp114; temp12 = temp16 - temp114; temp10 = temp17 + temp115; temp13 = temp17 - temp115; temp212 = (temp10 + temp12) * INV_SQRT2; temp214 = (temp10 - temp12) * INV_SQRT2; temp213 = (temp13 - temp11) * INV_SQRT2; temp215 = (temp11 + temp13) * -INV_SQRT2; vec0 = vec[0] - vec[16]; vec1 = vec[1] - vec[17]; vec2 = vec[2] - vec[18]; vec3 = vec[3] - vec[19]; vec4 = vec[4] - vec[20]; vec5 = vec[5] - vec[21]; vec6 = vec[6] - vec[22]; vec7 = vec[7] - vec[23]; vec8 = vec[8] - vec[24]; vec9 = vec[9] - vec[25]; vec10 = vec[10] - vec[26]; vec11 = vec[11] - vec[27]; vec12 = vec[12] - vec[28]; vec13 = vec[13] - vec[29]; vec14 = vec[14] - vec[30]; vec15 = vec[15] - vec[31]; temp19 = (vec2 + vec14) * -COS_3PI_DIV8; temp110 = (vec2 - vec14) * COS_PI_DIV8; temp18 = (vec3 + vec15) * COS_3PI_DIV8; temp111 = (vec3 - vec15) * COS_PI_DIV8; temp15 = (vec4 + vec12) * -INV_SQRT2; temp16 = (vec4 - vec12) * INV_SQRT2; temp14 = (vec5 + vec13) * INV_SQRT2; temp17 = (vec5 - vec13) * INV_SQRT2; temp113 = (vec6 + vec10) * -COS_PI_DIV8; temp114 = (vec6 - vec10) * COS_3PI_DIV8; temp112 = (vec7 + vec11) * COS_PI_DIV8; temp115 = (vec7 - vec11) * COS_3PI_DIV8; vec2 = temp18 * SQRT2PLUS1 - temp112 * SQRT2MINUS1; vec3 = temp19 * SQRT2PLUS1 - temp113 * SQRT2MINUS1; vec4 = temp110 * SQRT2MINUS1 - temp114 * SQRT2PLUS1; vec5 = temp111 * SQRT2MINUS1 - temp115 * SQRT2PLUS1; temp18 += temp112; temp19 += temp113; temp110+= temp114; temp111+= temp115; vec6 = vec0 + temp14; vec10 = vec0 - temp14; vec7 = vec1 + temp15; vec11 = vec1 - temp15; vec12 = temp16 - vec9; vec14 = temp16 + vec9; vec13 = vec8 + temp17; vec15 = vec8 - temp17; temp10 = vec6 - vec14; temp12 = vec6 + vec14; temp11 = vec7 + vec15; temp13 = vec7 - vec15; temp14 = vec10 + vec12; temp16 = vec10 - vec12; temp15 = vec11 + vec13; temp17 = vec11 - vec13; vec10 = temp18 + temp110; temp110 = temp18 - temp110; vec11 = temp19 + temp111; temp111 = temp19 - temp111; temp112 = vec2 + vec4; temp114 = vec2 - vec4; temp113 = vec3 + vec5; temp115 = vec3 - vec5; *vec++ = temp20 + temp22; *vec++ = temp21 + temp23; *vec++ = temp12 + vec10; *vec++ = temp13 + vec11; *vec++ = temp210+ temp212; *vec++ = temp211+ temp213; *vec++ = temp10 + temp112; *vec++ = temp11 + temp113; *vec++ = temp24 - temp26; *vec++ = temp25 - temp27; *vec++ = temp16 + temp114; *vec++ = temp17 + temp115; *vec++ = temp28 + temp214; *vec++ = temp29 + temp215; *vec++ = temp14 + temp110; *vec++ = temp15 + temp111; *vec++ = temp20 - temp22; *vec++ = temp21 - temp23; *vec++ = temp12 - vec10; *vec++ = temp13 - vec11; *vec++ = temp210- temp212; *vec++ = temp211- temp213; *vec++ = temp10 - temp112; *vec++ = temp11 - temp113; *vec++ = temp24 + temp26; *vec++ = temp25 + temp27; *vec++ = temp16 - temp114; *vec++ = temp17 - temp115; *vec++ = temp28 - temp214; *vec++ = temp29 - temp215; *vec++ = temp14 - temp110; *vec++ = temp15 + temp111; *vec++ = temp20 - temp22; *vec++ = temp21 - temp23; *vec++ = temp12 - vec10; *vec++ = temp13 - vec11; *vec++ = temp210- temp212; *vec++ = temp211- temp213; *vec++ = temp10 - temp112; *vec++ = temp11 - temp113; *vec++ = temp24 + temp26; *vec++ = temp25 + temp27; *vec++ = temp16 - temp114; *vec++ = temp17 - temp115; *vec++ = temp28 - temp214; *vec++ = temp29 - temp215; *vec++ = temp14 - temp110; *vec++ = temp15 - temp111; }