Anastasia added inline comments.
================ Comment at: clang/lib/AST/MicrosoftMangle.cpp:2956 + + mangleArtificialTagType(TTK_Struct, TemplateMangling, {"__clang"}); } ---------------- erichkeane wrote: > Anastasia wrote: > > We don't seem to add namespace for other OpenCL types, although I am not > > against it as I find it actually cleaner. > > > > Since the mangling deviates what is documented can you add some comments > > here explaining your mangling scheme? > The Microsoft mangling scheme is owned by the Microsoft Corporation, so > adding something to their mangling (like 8ocl_pipe) isn't permitted. Thus, > the clang project mangles our types that aren't supported by Microsoft as a > type in the __clang namespace. > > You'll note that we do it for a bunch of types above, including > AddressSpaceType, VectorType, _Complex, _Float16, _Half, etc. Are you saying that we have a bug for the other OpenCL type i.e. images, samplers, etc? ================ Comment at: clang/test/CodeGenOpenCL/pipe_types_mangling.cl:12 +// WINDOWS: define dso_local void @"?test1@@YAXU?$ocl_pipe@H$00@__clang@@@Z" +// UNMANGLED: define {{.*}}void @test1( +} ---------------- Any reason to test unmangled? ================ Comment at: clang/test/CodeGenOpenCL/pipe_types_mangling.cl:25 + +#ifdef WIN +// SPIR Spec specifies mangling on pipes that doesn't include the element type ---------------- I am still unclear why is this special case? CHANGES SINCE LAST ACTION https://reviews.llvm.org/D75685/new/ https://reviews.llvm.org/D75685 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits