Typed pointers support will be dropped in LLVM 17
gerekon opened this issue · comments
Hi guys,
In Espressif we are trying to use GLOW for our chips. During porting our LLVM fork to support glow we faced a problem. There are a lot of uses of getPointerElementType
in your code base what conflicts with LLVM opaque pointers mode feature. Staring from LLVM 15 that mode is the default, so we had to disable it in our Glow port manually. But starting form LLVM 16 Typed pointers are supported on a best-effort basis only and not tested
and in LLVM 17 Typed pointers are not supported.
.
So my question is do you have any plans to update you code base according to opaque pointers migration rules because LLVM 17 will become incompatible with it?
@gerekon This is a very good question. Ideally, we should make the effort to make the code base compatible with opaque pointers. Many uses are easy to fix. But there are some cases, where the code e.g. iterates over the function arguments and their types and then if a type of an argument is a pointer type we need to do something. E.g. in LLVMIRGen::getDebugType. We'd need to see how to handle such complex cases.