[PATCH] D33170: [X86] Adding avx512_vpopcntdq feature set and its intrinsics

Craig Topper via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu May 18 09:36:19 PDT 2017


craig.topper added inline comments.


================
Comment at: lib/CodeGen/CGBuiltin.cpp:7526
+    llvm::Type *ResultType = ConvertType(E->getType());
+    Value *X = EmitScalarExpr(E->getArg(0));
+    llvm::Function *F = CGM.getIntrinsic(Intrinsic::ctpop, ResultType);
----------------
oren_ben_simhon wrote:
> craig.topper wrote:
> > I'm not sure what EmitScalarExpr does, but I got think its not right for a vector argument.
> Vector type is considered as scalar (single value) type from the emitter point of view.
> See also: http://llvm.org/docs/LangRef.html#single-value-types
> 
Why can't we just use Ops[0] in place of X?


Repository:
  rL LLVM

https://reviews.llvm.org/D33170





More information about the cfe-commits mailing list