Add a fir.llvm_ptr type to allow any level of indirections Currently, fir pointer types (fir.ref, fir.ptr, and fir.heap) carry a special Fortran semantics, and cannot be freely combined/nested. When implementing some features, lowering sometimes needs more liberty regarding the number of indirection levels. Add a fir.llvm_ptr that has no constraints. Allow its usage in fir.coordinate_op, fir.load, and fir.store. Convert the FIR LLVMPointer to an LLVMPointer in the LLVM dialect. Reviewed By: clementval Differential Revision: https://reviews.llvm.org/D113755 Co-authored-by: Jean Perier <jperier@nvidia.com>
127 KiB
127 KiB