jhuber6 wrote: > > I figured we can just treat these as clang extensions for the time being. > > We already have two variants that are more or less redundant for specific > > use-cases, (OpenCL and HIP), which should be able to be removed after this. > > I'm not sure what you mean here. If you mean that users are expected to use > the OpenCL/HIP/etc. standard APIs, and you only expect to use these as part > of language runtimes, then maybe we don't care so much if it's clang-only.
They should be available to users, but this level of programming is highly compiler-dependent already so I don't see it as much different. > It might be worth considering using string literals instead of numbers for > the different scopes. It removes any question of whether the list of scopes > is complete and the order of of numbers on the list. And it doesn't require > defining a bunch of new preprocessor macros. The underlying implementation is a string literal in the LLVM `syncscope` argument, but the problem is that this isn't standardized at all and varies between backends potentially. I suppose we could think of this are more literally "target the LLVM `syncscope` argument". I'd like something that's "reasonably" consistent between targets since a lot of this can be shared as simple hierarchy. it would be really annoying if each target had to define separate strings for something that's mostly common in concept. https://github.com/llvm/llvm-project/pull/72280 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits