[LLVMdev] Loads not hoisted out of the loop

Dimitri Tcaciuc dtcaciuc at gmail.com
Fri Jan 18 10:24:50 PST 2013


On Fri, Jan 18, 2013 at 10:00 AM, Krzysztof Parzyszek <
kparzysz at codeaurora.org> wrote:

> f90_array_type = type { i32 size, double* data };


I am not certain how fortran implements multi-dimensional arrays, but in my
case I'm doing something like

   type { i32 nd, i32* dims, double* data };

Perhaps we could add !tbaa.pointer?

   !1 = metadata !{ metadata !"int", metadata !0 }
   !2 = metadata !{ metadata !"double", metadata !0 }

   !3 = metadata !{ metadata !1, 0 }     ; tbaa.pointer { metadata type,
i64 noalias }
   !4 = metadata !{ metadata !2, 1 }

   !5 = { i64 0, i64 4, metadata !1, i64 8, i64 8, metadata !3, i64 16, i64
8, metadata !4 }

   %Array = type { i32 nd, i32* dims, double* data }, !tbaa.struct !5


Dimitri.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130118/1ffed89d/attachment.html>


More information about the llvm-dev mailing list