[llvm] [polly] [delinearize] Extract array dimensions from alloca and global declarations (PR #156342)

Ryotaro Kasuga via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 10 10:22:00 PDT 2025


================
@@ -523,7 +525,7 @@ for.body:                                         ; preds = %entry, %for.body
   %conv = trunc i64 %i.02 to i32
   %sub = sub nsw i64 18, %i.02
   %mul = mul nsw i64 %i.02, 3
-  %sub1 = add nsw i64 %mul, -18
+  %sub1 = add nsw i64 %mul, 18
----------------
kasuga-fj wrote:

My argument is: please do not rewrite the input (see also https://github.com/llvm/llvm-project/pull/156342#discussion_r2421134284). If you want to test the feature that using type information of global decls as heuristic guide, you should add a new one instead of changing the existing one.

> ```
> int (*A)[100] = Mem + 50;
> ```
> 
> 
>     
>   
> 
> I believe we need a bit more offset here than `Mem + 50`: at least `Mem + 18 * 100` or so.

IIUC, `Mem + 50` points to the same location as `&Mem[50][0]`.

https://github.com/llvm/llvm-project/pull/156342


More information about the llvm-commits mailing list