[PATCH] D108763: Use type sizes when determining dependence

Jolanta Jensen via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 27 04:02:13 PDT 2021


jolanta.jensen marked an inline comment as done.
jolanta.jensen added inline comments.


================
Comment at: llvm/test/Transforms/LoopVectorize/depend_diff_types.ll:11
+;
+; subroutine foo(V1,V3,M,N)
+;   implicit none
----------------
fhahn wrote:
> Please try to simplify the input IR and try to motivate/explain the problem only based on the input IR.
The whole test is rewritten. 


================
Comment at: llvm/test/Transforms/LoopVectorize/depend_diff_types.ll:58-63
+  %20 = add nsw i64 %indvars.iv, -1824
+  %21 = getelementptr i64, i64* %4, i64 %20
+  %22 = load i64, i64* %21, align 8, !tbaa !6
+  %23 = add nuw i64 %indvars.iv, 15296
+  %24 = getelementptr i64, i64* %3, i64 %23
+  store i64 %22, i64* %24, align 8, !tbaa !4
----------------
malharJ wrote:
> perhaps this can be removed ?
> 
> It looks like the IR corresponds to 
> 
> 
> ```
> 1) v3[i+31] = (v1[1903+i] * v3[1023+i]);   // ---> all accesses are double*
> 
> 2) v3[i+1007] =  v1[i+47];   // ---> all accesses are i64*
> 
> 3) v3[i+16319] = v1[i+79];   // ---> all accesses are i64* (could remove ?)
> ```
> 
> Perhaps we are only concerned with the lines 1 and 2, as they are of different types ?
The whole test is rewritten.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D108763/new/

https://reviews.llvm.org/D108763



More information about the llvm-commits mailing list