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

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Apr 9 09:42:54 PDT 2018


craig.topper 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,
----------------
tkrupa wrote:
> 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?
Removing the FIXME should be enough. If anyone tries to delete it, they'll get a build error in clang.


Repository:
  rL LLVM

https://reviews.llvm.org/D41599





More information about the llvm-commits mailing list