https://bugs.llvm.org/show_bug.cgi?id=45308

            Bug ID: 45308
           Summary: Assert when combining 'kernel' and
                    attribute-overloadable on windows.
           Product: clang
           Version: trunk
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: OpenCL
          Assignee: unassignedclangb...@nondot.org
          Reporter: erich.ke...@intel.com
                CC: anastasia.stul...@arm.com, llvm-bugs@lists.llvm.org

See: https://godbolt.org/z/qrARTd

__attribute__((overloadable))
kernel void foo(){}

'foo' needs to be mangled (because of overloadable), but has a calling
convention that the windows mangler doesn't know about.

We either need to teach MicrosoftMangler to support this mangling, or disallow
attribute-overloadable and 'kernel' to be used together.  Filing the defect
because I'm not sure what the right answer is and want feedback from others.

Unsupported CC for mangling
UNREACHABLE executed at
/iusers/ekeane1/workspaces/llvm-project/clang/lib/AST/MicrosoftMangle.cpp:2402!

The CC value is clang::CC_OpenCLKernel.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to