================ @@ -1270,77 +1270,21 @@ exit: ; MODULE: attributes #[[ATTR1:[0-9]+]] = { convergent nocallback nounwind } ; MODULE: attributes #[[ATTR2:[0-9]+]] = { convergent nocallback nofree nounwind willreturn } ; MODULE: attributes #[[ATTR3:[0-9]+]] = { nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) } -; MODULE: attributes #[[ATTR4]] = { "kernel" } -; MODULE: attributes #[[ATTR5]] = { nosync memory(none) } +; MODULE: attributes #[[ATTR4]] = { "kernel" "nvvm.kernel" } +; MODULE: attributes #[[ATTR5]] = { "kernel" } +; MODULE: attributes #[[ATTR6]] = { nosync memory(none) } ;. ; CGSCC: attributes #[[ATTR0]] = { "llvm.assume"="ompx_aligned_barrier" } ; CGSCC: attributes #[[ATTR1:[0-9]+]] = { convergent nocallback nounwind } ; CGSCC: attributes #[[ATTR2:[0-9]+]] = { convergent nocallback nofree nounwind willreturn } ; CGSCC: attributes #[[ATTR3:[0-9]+]] = { nocallback nofree nosync nounwind willreturn memory(inaccessiblemem: write) } -; CGSCC: attributes #[[ATTR4]] = { "kernel" } -; CGSCC: attributes #[[ATTR5]] = { nosync memory(none) } +; CGSCC: attributes #[[ATTR4]] = { "kernel" "nvvm.kernel" } ---------------- AlexMaclean wrote:
Unfortunately, I think we do. "kernel" is really more like "OpenMP kernel" and the semantics for this do not seem to be a perfect match for "nvvm.kernel". For example, `@multiple_blocks_functions_non_kernel_effects_2` in this test has "kernel" but is not an nvvm kernel. I'm vary unfamiliar with the OpenMP semantics so I thought keeping it separate would be the safest approach, it also may be clearest to have a common "nvvm.*" prefix for all attributes currently represented as nvvm.annotations. https://github.com/llvm/llvm-project/pull/119261 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits