I experimented with adding a new language standard extension based off (C++ with support for native half type), but I am having an issue with the intrinsic function calls having their names mangled. This leads to the calls not being selected and translated during the lowering process in llvm. Is there a way to fix this issue?
So I did some investigating, and from what I can tell, for some of my intrinsics, during the getBuiltinId function, when a null linkage declaration is seen for the first declaration’s context, causing the intrinsic to not be viewed as a builtin.For some reason, the declaration context of the builtin is viewed as the file it was first used in. Does anyone know why this might occur?