[llvm-dev] Regarding Dependence distance dump
Venkataramanan Kumar via llvm-dev
llvm-dev at lists.llvm.org
Wed Sep 19 02:58:19 PDT 2018
Hi,
I tired to see when this behavior changed in LLVM.
It seems to start from.
--snip--
commit 95e5d37d5868ebde2302bc302c1e0af407c5646d
Author: Sebastian Pop <sebpop at gmail.com>
Date: Tue Mar 6 21:55:59 2018 +0000
DA: remove uses of GEP, only ask SCEV
--snip--
https://reviews.llvm.org/D35430
Review URL says "GEP" based approach was wrong for multidimensional array
references. The LLVM-DA now uses SCEV representation. But why we are not
getting the distance with SCEV? Current DA will not work for
multidimensional arrays?
I need to get dependence distance for a transformation that I am working
on. How do I get distance for such cases, esp multidimensional arrays?
Thanks and regards,
Venkat.
On Tue, 18 Sep 2018 at 19:00, Venkataramanan Kumar <
venkataramanan.kumar.llvm at gmail.com> wrote:
> Hi,
>
> For the below test case, I need the dependence distance between the array
> references "a[j][i]" and "a[j-1][i-2]".
>
> --Snip--
> int a[5][5];
> int b[10];
>
> void test()
> {
> for (int j=1;j<5;j++)
> for (int i=2;i<5;i++)
> {
> a[j][i] = 3.0;
> b[i]= a[j-1][i-2] ;
> }
> }
> --Snip-
>
> Compile steps
> clang -O1 -emit-llvm -S test.c
> opt -analyze -da dist.ll
>
> I tried dumping the dependence information with LLVM trunk (2018_09_17),
> it shows:
>
> Printing analysis 'Dependence Analysis' for function 'test':
> da analyze - none!
> da analyze - flow [< <>]! <== dumps direction vector
> da analyze - none!
> da analyze - none!
> da analyze - none!
> da analyze - consistent output [S 0]!
>
> LLVM Release 6.0.1 dumps the expected distance.
> Printing analysis 'Dependence Analysis' for function 'test':
> da analyze - none!
> da analyze - consistent flow [1 2]!
> da analyze - none!
> da analyze - none!
> da analyze - none!
> da analyze - consistent output [S 0]!
>
> In trunk, it is now showing directions instead of distances.
> How to get the dependence distance?
>
> regards,
> Venkat.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20180919/60e3b1b6/attachment.html>
More information about the llvm-dev
mailing list