--- a/boot/duneboot.ml +++ b/boot/duneboot.ml @@ -1093,7 +1093,14 @@ `Right { flags = (match asm.assembler with - | `C_comp -> [ "-c"; fn; "-o"; out_file ] + | `C_comp -> + let avx512_flags = + if String.is_prefix ~prefix:"blake3_avx512" + (Filename.basename fn) + then [ "-mavx512f"; "-mavx512vl"; "-mavx512bw" ] + else [] + in + avx512_flags @ [ "-c"; fn; "-o"; out_file ] | `Msvc_asm -> [ "/nologo"; "/quiet"; "/Fo" ^ out_file; "/c"; fn ]) ; assembler = asm.assembler ; out_file