[LLVMdev] [POLLY] fix Bug 15817

Jack Howarth howarth at bromo.med.uc.edu
Wed Jun 5 06:24:10 PDT 2013


On Wed, Jun 05, 2013 at 08:47:03AM -0400, Jack Howarth wrote:
> On Tue, Jun 04, 2013 at 11:51:31PM -0700, Tobias Grosser wrote:
> > On 05/31/2013 01:09 PM, Jack Howarth wrote:
> >> On Fri, May 31, 2013 at 10:59:52AM -0700, Tobias Grosser wrote:
> >>> On 05/31/2013 10:11 AM, Sebastian Pop wrote:
> >>>> Sebastian Pop wrote:
> >>>>> Sebastian Pop wrote:
> >>>>>> Jack Howarth wrote:
> >>>>>>>      The attached patch eliminates http://llvm.org/bugs/show_bug.cgi?id=15817 by removing the remaining
> >>>>>>> "; XFAIL:*" added in http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130415/171812.html.
> >>>>>>> The Isl/CodeGen/scevcodegen-1.ll testcase in polly appears as an XPASS in current llvm/polly 3.3
> >>>>>>> and trunk svn for both x86_64-apple-darwin* and x86_64 Fedora 15 when built against isl 0.11.1/2 and
> >>>>>>> cloog 0.18.0. The attached patch eliminates this unexpected XPASS seen with newer isl/cloog.
> >>>>>>>                Jack
> >>>>>>
> >>>>>>> Index: test/Isl/CodeGen/scevcodegen-1.ll
> >>>>>>> ===================================================================
> >>>>>>> --- test/Isl/CodeGen/scevcodegen-1.ll	(revision 182998)
> >>>>>>> +++ test/Isl/CodeGen/scevcodegen-1.ll	(working copy)
> >>>>>>> @@ -1,7 +1,6 @@
> >>>>>>>    ; RUN: opt %loadPolly -polly-codegen-isl -polly-codegen-scev %s
> >>>>>>>    ; -polly-independent causes: Cannot generate independent blocks
> >>>>>>>    ;
> >>>>>>> -; XFAIL:*
> >>>>>>>    target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
> >>>>>>>    target triple = "x86_64-unknown-linux-gnu"
> >>>>>>>
> >>>>>>
> >>>>>> If I remove that XFAIL the testcase is ICEing on my ARM laptop with:
> >>>>>>
> >>>>>> opt: ../tools/polly/lib/Analysis/ScopDetection.cpp:353: bool polly::ScopDetection::isValidInstruction(llvm::Instruction&, polly::ScopDetection::DetectionContext&) const: Assertion `!Context.Verifying && "IndVar"' failed.
> >>>>>>
> >>>>>
> >>>>> This was with ISL as of this commit:
> >>>>>
> >>>>> commit 02b2b6f2298d6beca919692219a287986e984347
> >>>>> Author: Sven Verdoolaege <skimo at kotnet.org>
> >>>>> Date:   Tue Apr 9 17:37:46 2013 +0200
> >>>>>
> >>>>>
> >>>>> When updating ISL to master as of today, I get a compile error when building polly:
> >>>>>
> >>>>> commit 1df91d8515ec88dc7f7f597168ad0f34f26de5a7
> >>>>> Author: Sven Verdoolaege <skimo at kotnet.org>
> >>>>> Date:   Wed Apr 17 12:38:51 2013 +0200
> >>>>>
> >>>>>       isl_ast_codegen.c: contruct_shifted_executed: use isl_val
> >>>>>
> >>>>>       Signed-off-by: Sven Verdoolaege <skimo at kotnet.org>
> >>>>>
> >>>>>
> >>>>> In file included from ../tools/polly/lib/DeadCodeElimination.cpp:23:0:
> >>>>> /home/spop/s/isl/usr/include/isl/union_map.h:114:23: error: isl_multi_aff has not been declared
> >>>
> >>> Hi Sebastian,
> >>>
> >>> the test case is expected to fail. It shows an open bug with
> >>> -enable-codegen-scev and the independent blocks pass. The problem was
> >>> that it was not consistently failing. I fixed this in r183025.
> >>>
> >>> Cheers,
> >>> Tobias
> >>
> >> Tobias,
> >>     Oddly I am still seeing...
> >>
> >> XPASS: Polly :: Isl/CodeGen/scevcodegen-1.ll (124 of 250)
> >
> > This file should not exist any more. It was removed (and moved to  
> > test/IndependentBlocks/indvars.ll). Could you check if this is a stale  
> > file that was just not removed correctly?
> >
> > Thanks,
> > Tobias
> 
> Tobias,
>    I still see test/Isl/CodeGen/scevcodegen-1.ll in the polly 3.3 release branch (svn).
> It is also shown to still be present by the urls...
> 
> http://llvm.org/svn/llvm-project/polly/branches/release_33/test/Isl/CodeGen/scevcodegen-1.ll
> 
> but does seem to be removed in trunk...
> 
> http://llvm.org/svn/llvm-project/polly/trunk/test/Isl/CodeGen/
>  
> Can we get those changes into the polly 3.3 release tarball?
>         Jack
> 

Tobias,
   I can also confirm that the changes in current polly trunk solve the problem...

Scanning dependencies of target check-polly
[100%] Running polly regression tests
Testing Time: 3.52s
  Expected Passes    : 218
  Expected Failures  : 24
  Unsupported Tests  : 7
[100%] Built target check-polly
Scanning dependencies of target polly-test
[100%] Built target polly-test

Let me know when you have them backported to polly 3.3 release branch.
          Jack

> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev




More information about the llvm-dev mailing list