[PATCH] D41599: [X86] Lowering X86 avx512 sqrt intrinsics to IR - LLVM

Tomasz Krupa via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Apr 8 23:53:18 PDT 2018


tkrupa added inline comments.


================
Comment at: include/llvm/IR/IntrinsicsX86.td:4437
 
-  def int_x86_avx512_mask_sqrt_pd_128 : GCCBuiltin<"__builtin_ia32_sqrtpd128_mask">,
-        Intrinsic<[llvm_v2f64_ty], [llvm_v2f64_ty, llvm_v2f64_ty,
-                                    llvm_i8_ty], [IntrNoMem]>;
-  def int_x86_avx512_mask_sqrt_pd_256 : GCCBuiltin<"__builtin_ia32_sqrtpd256_mask">,
-        Intrinsic<[llvm_v4f64_ty], [llvm_v4f64_ty, llvm_v4f64_ty,
-                                    llvm_i8_ty], [IntrNoMem]>;
-  def int_x86_avx512_mask_sqrt_pd_512 : GCCBuiltin<"__builtin_ia32_sqrtpd512_mask">,
+  def int_x86_avx512_mask_sqrt_pd_512 : // FIXME: remove this intrinsic
         Intrinsic<[llvm_v8f64_ty], [llvm_v8f64_ty, llvm_v8f64_ty,
----------------
craig.topper wrote:
> Isn't clang still using this one when the rounding mode is non-default?
It does, ss and sd intrinsics also do. The GCCBuiltin binds needed to be removed to enable lowering in AutoUpgrade but yeah, these definitions should stay. Is erasing the FIXME enough or should there be some note to not remove them?


Repository:
  rL LLVM

https://reviews.llvm.org/D41599





More information about the llvm-commits mailing list