[llvm-bugs] [Bug 45308] New: Assert when combining 'kernel' and attribute-overloadable on windows.

via llvm-bugs llvm-bugs at lists.llvm.org
Wed Mar 25 12:35:00 PDT 2020


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: unassignedclangbugs at nondot.org
          Reporter: erich.keane at intel.com
                CC: anastasia.stulova at arm.com, llvm-bugs at 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.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-bugs/attachments/20200325/98ec9cf7/attachment.html>


More information about the llvm-bugs mailing list