On Fri, Jan 10, 2014 at 07:20:38PM +0300, Kirill Yukhin wrote: > @@ -28920,6 +28927,7 @@ static const struct builtin_description > bdesc_special_args[] = > { OPTION_MASK_ISA_AVX512F, CODE_FOR_avx512f_movntv16sf, > "__builtin_ia32_movntps512", IX86_BUILTIN_MOVNTPS512, UNKNOWN, (int) > VOID_FTYPE_PFLOAT_V16SF }, > { OPTION_MASK_ISA_AVX512F, CODE_FOR_avx512f_movntv8df, > "__builtin_ia32_movntpd512", IX86_BUILTIN_MOVNTPD512, UNKNOWN, (int) > VOID_FTYPE_PDOUBLE_V8DF }, > { OPTION_MASK_ISA_AVX512F, CODE_FOR_avx512f_movntv8di, > "__builtin_ia32_movntdq512", IX86_BUILTIN_MOVNTDQ512, UNKNOWN, (int) > VOID_FTYPE_PV8DI_V8DI }, > + { OPTION_MASK_ISA_AVX512F, CODE_FOR_avx512f_movntdqa, > "__builtin_ia32_movntdqa512", IX86_BUILTIN_MOVNTDQA512, UNKNOWN, (int) > V8DI_FTYPE_PV8DI }, > { OPTION_MASK_ISA_AVX512F, CODE_FOR_avx512f_storedquv16si_mask, > "__builtin_ia32_storedqusi512_mask", IX86_BUILTIN_STOREDQUSI512, UNKNOWN, > (int) VOID_FTYPE_PV16SI_V16SI_HI }, > { OPTION_MASK_ISA_AVX512F, CODE_FOR_avx512f_storedquv8di_mask, > "__builtin_ia32_storedqudi512_mask", IX86_BUILTIN_STOREDQUDI512, UNKNOWN, > (int) VOID_FTYPE_PV8DI_V8DI_QI }, > { OPTION_MASK_ISA_AVX512F, CODE_FOR_avx512f_storeupd512_mask, > "__builtin_ia32_storeupd512_mask", IX86_BUILTIN_STOREUPD512, UNKNOWN, (int) > VOID_FTYPE_PV8DF_V8DF_QI },
This means you should ensure aligned_mem will be set for CODE_FOR_avx512f_movntdqa in ix86_expand_special_args_builtin. Leaving the rest of review to Uros/Richard. Jakub