#5302: Unused arguments in join points
---------------------------------+------------------------------------------
    Reporter:  reinerp           |        Owner:  simonpj                
        Type:  bug               |       Status:  new                    
    Priority:  normal            |    Milestone:  7.4.1                  
   Component:  Compiler          |      Version:  7.0.3                  
    Keywords:                    |     Testcase:                         
   Blockedby:                    |   Difficulty:                         
          Os:  Unknown/Multiple  |     Blocking:                         
Architecture:  Unknown/Multiple  |      Failure:  Runtime performance bug
---------------------------------+------------------------------------------

Comment(by reinerp):

 I can't reproduce either. I must have uploaded the wrong version of the
 file by mistake -- sorry.

 The new file I just uploaded (T5302.hs) should work. With exactly the
 command you gave, look for the first join point inside the {{{Deep}}} case
 of {{{wsplitTree}}}. I get

 {{{
                     $w$j_sIo
                       :: GHC.Prim.Int#
                          -> GHC.Prim.Int#
                          -> (# Unboxed.FingerTree
                                  Unboxed.Size (Unboxed.Node Unboxed.Size
 b_ak6),
                                Unboxed.Node Unboxed.Size b_ak6,
                                Unboxed.FingerTree
                                  Unboxed.Size (Unboxed.Node Unboxed.Size
 b_ak6) #)
                     [LclId, Arity=2, Str=DmdType LL]
                     $w$j_sIo =
                       \ (w2_sHj :: GHC.Prim.Int#) _ ->
 }}}

 So in this case the second argument is an {{{Int#}}} rather than an
 {{{Int}}}.

 With

 {{{
 ghc-7.1.20110629 -c -O2 -ddump-simpl T5302.hs
 }}}

 I get

 {{{
                 $j_sJ4
                   :: GHC.Prim.Int#
                      -> GHC.Types.Int
                      -> (# Unboxed.FingerTree
                              Unboxed.Size (Unboxed.Node Unboxed.Size
 b_aiB),
                            Unboxed.Node Unboxed.Size b_aiB,
                            Unboxed.FingerTree
                              Unboxed.Size (Unboxed.Node Unboxed.Size
 b_aiB) #)
                 [LclId, Arity=2, Str=DmdType LL]
                 $j_sJ4 =
                   \ (x_aEm :: GHC.Prim.Int#) _ ->
 }}}

 in the same place. So in this case the second argument is an {{{Int}}}, as
 in my original report.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/5302#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler

_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to