要求使用 AVX SIMD 指令重写以下代码,并通过使用内部函数进行比较和选择来确保它不包含分支,请教各位大老这个要怎么写。
float a[8], b[8], c[8], e[8]; for (unsigned int i = 0; i < 8; i++) { if (a[i] == b[i]) { e[i] = b[i]; } elseif (a[i] > c[i]) { e[i] = a[i]; } else { [i] = c[i]; } }