[PATCH] D126857: [HLSL] Add WaveActiveCountBits as Langugage builtin function for HLSL

Xiang Li via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Thu Jun 2 12:37:43 PDT 2022


python3kgae marked 2 inline comments as done.
python3kgae added inline comments.


================
Comment at: clang/include/clang/Basic/Builtins.def:1697
+// HLSL
+LANGBUILTIN(WaveActiveCountBits, "Uib", "nc", HLSL_LANG)
+
----------------
Anastasia wrote:
> python3kgae wrote:
> > Anastasia wrote:
> > > FYI we most of time try to add a builtin name using a reserved identifier which is not part of the language standard (mostly prefixed by `__`). Then we add regular function that just calls the clang builtins. This way provides more flexibility to the implementers. However you might not need this... in which case using original name avoids an extra call.
> > Yes. For this one, it is without prefix to avoid extra call.
> > I'm following things like enqueue_kernel in opencl.
> > For other things support overload which has to make extra call, I'll add the prefix.
> Ok, although `enqueue_kernel` was implemented as a builtin because it has a weird variadic prototype that can't be implemented using normal features of C/C++ languages. Hence it is a builtin with custom SemaChecking.
I see.
Since HLSL also has things cannot implemented using HLSL itself, we cannot       put all HLSL intrinsic in one place anyway.
So when it is possible to reduce an extra call, I just reduce it.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D126857/new/

https://reviews.llvm.org/D126857



More information about the cfe-commits mailing list