[GHC] #8130: T7571 with WAY=llvm fails, but not WAY=optllvm

GHC ghc-devs at haskell.org
Wed Aug 14 08:30:07 CEST 2013


#8130: T7571 with WAY=llvm fails, but not WAY=optllvm
------------------------------------+-------------------------------------
       Reporter:  thoughtpolice     |             Owner:
           Type:  bug               |            Status:  new
       Priority:  high              |         Milestone:
      Component:  Compiler          |           Version:  7.7
       Keywords:                    |  Operating System:  Unknown/Multiple
   Architecture:  Unknown/Multiple  |   Type of failure:  None/Unknown
     Difficulty:  Unknown           |         Test Case:
     Blocked By:                    |          Blocking:
Related Tickets:                    |
------------------------------------+-------------------------------------
 Test case (#7571 just will not die, it seems)

 {{{
 $ make TEST=T7571 WAY=llvm
 ...
 ====> Scanning ./all.T
 =====> T7571(llvm) 6 of 7 [0, 0, 0]
 cd . && '/home/a/ghc/ghc-pristine/inplace/bin/ghc-stage2' -fforce-recomp
 -dcore-lint -dcmm-lint -dno-debug-output -no-user-package-db -rtsopts
 -fno-ghci-history -c T7571.cmm -fllvm  -no-hs-main   >T7571.comp.stderr
 2>&1
 Actual stderr output differs from expected:
 --- /dev/null   2013-08-07 22:18:14.132934017 -0500
 +++ ./T7571.comp.stderr 2013-08-14 01:26:33.942103723 -0500
 @@ -0,0 +1 @@
 +WARNING: Non constant alignment value given for memcpy! Please report to
 GHC developers
 *** unexpected failure for T7571(llvm)
 }}}

 However, this test case does not fail under WAY=optllvm, which I think is
 worth investigating probably:

 {{{
 $ make TEST=T7571 WAY=optllvm
 ...
 ====> Scanning ./all.T
 =====> T7571(optllvm) 6 of 7 [0, 0, 0]
 cd . && '/home/a/ghc/ghc-pristine/inplace/bin/ghc-stage2' -fforce-recomp
 -dcore-lint -dcmm-lint -dno-debug-output -no-user-package-db -rtsopts
 -fno-ghci-history -c T7571.cmm -O -fllvm  -no-hs-main   >T7571.comp.stderr
 2>&1

 OVERALL SUMMARY for test run started at Wed Aug 14 01:25:42 CDT 2013
        7 total tests, which gave rise to
       28 test cases, of which
       27 were skipped

        0 had missing libraries
        1 expected passes
        0 expected failures

        0 caused framework failures
        0 unexpected passes
        0 unexpected failures
 }}}

 However, there is another way to trigger this bug in *both* cases:

 {{{
 #include "Cmm.h"

 testMemcpy (W_ dst, W_ src, W_ l, W_ sz)
 {
   prim %memcpy(dst, src, l, sz);
   return ();
 }
 }}}

 will fail both ways.

-- 
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/8130>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler




More information about the ghc-tickets mailing list