On 10/09/2013 03:31 AM, Kirill Yukhin wrote: > + else if (TARGET_AVX512PF && (write || !TARGET_PREFETCH_SSE)) > + operands[2] = GEN_INT (1);
I don't believe you want the TARGET_PREFETCH_SSE check there. That was really to select between SSE and 3dNow prefetch. If we have AVX, we're guaranteed to have SSE. Indeed, I think the whole condition ought to be rewritten to if (TARGET_AVX512PF && write) operands[2] = const1_rtx; else if (TARGET_PRFCHW && (write || !TARGET_PREFETCH_SSE)) operands[2] = GEN_INT (3); else operands[1] = const0_rtx; Otherwise OK. r~