[GHC] #7549: Deriving Bug?

2013-01-02 Thread GHC
#7549: Deriving Bug?
-+--
Reporter:  davorak   |  Owner:  
Type:  bug   | Status:  new 
Priority:  normal|  Component:  Compiler
 Version:  7.4.2 |   Keywords:  
  Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
 Failure:  None/Unknown  |  Blockedby:  
Blocking:|Related:  
-+--
 ghci -XDeriveDataTypeable
  import Data.Typeable
  data S = S deriving (typeable)
 ghc: panic! (the 'impossible' happened)
 (GHC version 7.4.2 for x86_64-unknown-linux):
   nameModule typeable{tv av8}

 Please report ...

 data S = S deriving typeable causes a parse error
 and
 The following work just fine:

 data S = S deriving Typeable
 data S = S deriving (Typeable)

 data S = S deriving (show) causes a similar error the only change being:

   nameModule show{tv av8}

 The same problem exists outside of ghci when trying to compile with GHC.

 The ascii tree for the dependancies of the ghc install produced with

 nix-store -q --tree $(which ghc)

 /nix/store/gzb4pca6nnb16lw2mbmr68kx2vwx8q56-ghc-7.4.2-wrapper[[BR]]
 +---/nix/store/043zrsanirjh8nbc5vqpjn93hhrf107f-bash-4.2-p24[[BR]]
 |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13[[BR]]
 |   |   +---/nix/store/jfcs9xnfbmiwqs224sb0qqsybbfl3sab-linux-
 headers-2.6.35.14[[BR]]
 |   |   |   +---/nix/store/jfcs9xnfbmiwqs224sb0qqsybbfl3sab-linux-
 headers-2.6.35.14 [...][[BR]]
 |   |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13
 [...][[BR]]
 |   +---/nix/store/043zrsanirjh8nbc5vqpjn93hhrf107f-bash-4.2-p24
 [...][[BR]]
 +---/nix/store/858ww5lrjxca5asa79vwq5rm6m1h3q6k-ghc-7.4.2[[BR]]
 |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13 [...][[BR]]
 |   +---/nix/store/043zrsanirjh8nbc5vqpjn93hhrf107f-bash-4.2-p24
 [...][[BR]]
 |   +---/nix/store/1iigiim5855m8j7pmwf5xrnpf705s4dh-binutils-2.21.1a[[BR]]
 |   |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13
 [...][[BR]]
 |   |   +---/nix/store/i3mqzy76lf51v5zqxjxyvf11j25iwycd-zlib-1.2.7[[BR]]
 |   |   |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13
 [...][[BR]]
 |   |   |   +---/nix/store/i3mqzy76lf51v5zqxjxyvf11j25iwycd-zlib-1.2.7
 [...][[BR]]
 |   |   +---/nix/store/1iigiim5855m8j7pmwf5xrnpf705s4dh-binutils-2.21.1a
 [...][[BR]]
 |   +---/nix/store/a9jvlnrva7vr1szbg6shpw6nr5xz898p-gmp-5.0.5[[BR]]
 |   |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13
 [...][[BR]]
 |   |   +---/nix/store/4gv9gby4bn1y0rlw3k0d5lyqy0yfkrc6-gcc-4.6.3[[BR]]
 |   |   |   +---/nix/store/jfcs9xnfbmiwqs224sb0qqsybbfl3sab-linux-
 headers-2.6.35.14 [...][[BR]]
 |   |   |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13
 [...][[BR]]
 |   |   |   +---/nix/store/i3mqzy76lf51v5zqxjxyvf11j25iwycd-zlib-1.2.7
 [...][[BR]]
 |   |   |   +---/nix/store/4gv9gby4bn1y0rlw3k0d5lyqy0yfkrc6-gcc-4.6.3
 [...][[BR]]
 |   |   +---/nix/store/a9jvlnrva7vr1szbg6shpw6nr5xz898p-gmp-5.0.5
 [...][[BR]]
 |   +---/nix/store/ahg5mlj2mlp7yfl3x875pq95ar763vgj-ncurses-5.9[[BR]]
 |   |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13
 [...][[BR]]
 |   |   +---/nix/store/043zrsanirjh8nbc5vqpjn93hhrf107f-bash-4.2-p24
 [...][[BR]]
 |   |   +---/nix/store/ahg5mlj2mlp7yfl3x875pq95ar763vgj-ncurses-5.9
 [...][[BR]]
 |   +---/nix/store/v4m3gahx1iz53v51rdinh0lcmipn1p4j-perl-5.14.2[[BR]]
 |   |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13
 [...][[BR]]
 |   |   +---/nix/store/4gv9gby4bn1y0rlw3k0d5lyqy0yfkrc6-gcc-4.6.3
 [...][[BR]]
 |   |
 +---/nix/store/vpp6h8l3mzjdn5paziz31vk52pg73635-coreutils-8.15[[BR]]
 |   |   |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13
 [...][[BR]]
 |   |   |   +---/nix/store/qh3l8f8369kvbhnkbwwnpaxayvnvi55v-
 acl-2.2.51[[BR]]
 |   |   |   |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13
 [...][[BR]]
 |   |   |   |   +---/nix/store/jaabnv7dgxzvyhg0nxzk7xqs2qxp5rcy-
 attr-2.4.46[[BR]]
 |   |   |   |   |
 +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13 [...][[BR]]
 |   |   |   |   |   +---/nix/store/jaabnv7dgxzvyhg0nxzk7xqs2qxp5rcy-
 attr-2.4.46 [...][[BR]]
 |   |   |   |   +---/nix/store/qh3l8f8369kvbhnkbwwnpaxayvnvi55v-acl-2.2.51
 [...][[BR]]
 |   |   |   +---/nix/store/vpp6h8l3mzjdn5paziz31vk52pg73635-coreutils-8.15
 [...][[BR]]
 |   |   +---/nix/store/v4m3gahx1iz53v51rdinh0lcmipn1p4j-perl-5.14.2
 [...][[BR]]
 |   +---/nix/store/xl3kqxs68gzs4h309wjyd32im9n6cnyr-gcc-
 wrapper-4.6.3[[BR]]
 |   |   +---/nix/store/cj7a81wsm1ijwwpkks3725661h3263p5-glibc-2.13
 [...][[BR]]
 |   |   +---/nix/store/043zrsanirjh8nbc5vqpjn93hhrf107f-bash-4.2-p24
 [...][[BR]]
 |   |   +---/nix/store/1iigiim5855m8j7pmwf5xrnpf705s4dh-binutils-2.21.1a

Re: [GHC] #7549: Deriving Bug?

2013-01-02 Thread GHC
#7549: Deriving Bug?
-+--
Reporter:  davorak   |Owner:  
Type:  bug   |   Status:  closed  
Priority:  normal|Component:  Compiler
 Version:  7.4.2 |   Resolution:  duplicate   
Keywords:|   Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  |  Failure:  None/Unknown
   Blockedby:| Blocking:  
 Related:|  
-+--
Changes (by monoidal):

  * status:  new = closed
  * resolution:  = duplicate


Comment:

 Thanks for the report, the bug is already fixed in GHC 7.6 - bug #5961.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7549#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #7550: incorrect bang patterns rejected with report a ghc bug

2013-01-02 Thread GHC
#7550: incorrect bang patterns rejected with report a ghc bug
--+-
Reporter:  aavogt |  Owner: 
 
Type:  bug| Status:  new
 
Priority:  normal |  Component:  Compiler   
 
 Version:  7.6.1  |   Keywords: 
 
  Os:  Unknown/Multiple   |   Architecture:  
Unknown/Multiple
 Failure:  Incorrect warning at compile-time  |  Blockedby: 
 
Blocking: |Related: 
 
--+-
 {{{
 {-# LANGUAGE BangPatterns #-}
 data E a = E { e :: ! [] a }
 {- The current error given is not graceful:

 ghc: panic! (the 'impossible' happened)
   (GHC version 7.6.1 for x86_64-unknown-linux):
 tc_hs_type: bang

 Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

 -}

 -- maybe there could be some suggestion that E should have been written
 data D a = D { d :: ! ([] a) }
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7550
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7550: incorrect bang patterns rejected with report a ghc bug

2013-01-02 Thread GHC
#7550: incorrect bang patterns rejected with report a ghc bug
-+--
Reporter:  aavogt|Owner:
   
Type:  bug   |   Status:  closed
   
Priority:  normal|Component:  Compiler  
   
 Version:  7.6.1 |   Resolution:  duplicate 
   
Keywords:|   Os:  Unknown/Multiple  
   
Architecture:  Unknown/Multiple  |  Failure:  Incorrect warning at 
compile-time
   Blockedby:| Blocking:
   
 Related:|  
-+--
Changes (by monoidal):

  * status:  new = closed
  * resolution:  = duplicate


Comment:

 Thanks for the report. The bug is already fixed in HEAD, see #7210.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7550#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7192: Bug in -fregs-graph with -fnew-codegen

2012-12-28 Thread GHC
#7192: Bug in -fregs-graph with -fnew-codegen
-+--
Reporter:  simonmar  |   Owner:  benl
Type:  bug   |  Status:  new 
Priority:  highest   |   Milestone:  7.8.1   
   Component:  Compiler  | Version:  7.7 
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  4258
 Related:|  
-+--
Changes (by PHO):

 * cc: pho@… (added)


-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7192#comment:11
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7503: Bug with PolyKinds, type synonyms GADTs

2012-12-20 Thread GHC
#7503: Bug with PolyKinds, type synonyms  GADTs
+---
Reporter:  Ashley Yakeley   |   Owner:  
 
Type:  bug  |  Status:  new 
 
Priority:  normal   |   Milestone:  
 
   Component:  Compiler (Type checker)  | Version:  7.6.1   
 
Keywords:   |  Os:  Linux   
 
Architecture:  x86_64 (amd64)   | Failure:  GHC rejects valid 
program
  Difficulty:  Unknown  |Testcase:  
 
   Blockedby:   |Blocking:  
 
 Related:   |  
+---
Changes (by simonpj):

  * difficulty:  = Unknown


Comment:

 Hmm.  As stated, it fails both with `AW` and `AW'` in the commented line.
 But this simpler one fails:
 {{{
 data Wrap a --  Wrap :: forall k. k - *

 data A a = MkA a (AW a)

 type AW  a = A (Wrap a)
 type AW2 a = A (Wrap a)

 class C (a :: k) where
 aw :: AW a -- workaround: AW2
 }}}
 With `AW` in the last line we get
 {{{
 T7503.hs:15:14:
 The first argument of `AW' should have kind `*',
   but `a' has kind `k1'
 In the type `AW a'
 In the class declaration for `C'
 }}}
 Replacing with the identical (!) `AW2` makes it go through.  Here is what
 is happening:
  * Type synonym `AW` and data type `A` are mutually recursive.
  * So they are kind-checked together, with `AW` being monomorphic.
  * `AW` is applied to `a::*` in the data type declaration of `A`, so `AW`
 ends up with kind `*-*`.
  * But that is insufficiently polymorphic for its use in the class
 declaration.
  * On the other hand `AW2` is not mutually recursive with `A`, so it is
 kind-checked after `A` is done, and gets the polymorphic kind `AW2 ::
 forall k. k - *`.

 Very similar things happen in the world of terms.  We solve them by
 [http://www.haskell.org/ghc/docs/latest/html/users_guide/other-type-
 extensions.html#typing-binds breaking the mutual recursion at a type
 signature], and in principle we could do the same here. After all, `A` is
 given a full kind signature.

 Still, it's not entirely trivial to implement.  And we don't have a
 general mechanism for giving kind signatures; for example, how would you
 give a kind signature for a type synonym?

 Worth thinking about. But perhpas not urgent.  Yell if it is hurting you.

 Simon

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7503#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7503: Bug with PolyKinds, type synonyms GADTs

2012-12-19 Thread GHC
#7503: Bug with PolyKinds, type synonyms  GADTs
--+-
Reporter:  Ashley Yakeley |  Owner: 
Type:  bug| Status:  new
Priority:  normal |  Component:  Compiler (Type checker)
 Version:  7.6.1  |   Keywords: 
  Os:  Linux  |   Architecture:  x86_64 (amd64) 
 Failure:  GHC rejects valid program  |  Blockedby: 
Blocking: |Related: 
--+-

Comment(by simonpj@…):

 commit 3394d49af13697626145aca6d80b65ae8661418c
 {{{
 Author: Simon Peyton Jones simo...@microsoft.com
 Date:   Wed Dec 19 17:37:27 2012 +

 Pass the correct inst_tys argument to dataConCannotMatch, in
 mkRecSelBinds

 This fixes Trac #7503.

  compiler/typecheck/TcTyClsDecls.lhs |   16 ++--
  1 files changed, 10 insertions(+), 6 deletions(-)
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7503#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #7503: Bug with PolyKinds, type synonyms GADTs

2012-12-16 Thread GHC
#7503: Bug with PolyKinds, type synonyms  GADTs
--+-
Reporter:  Ashley Yakeley |  Owner: 
Type:  bug| Status:  new
Priority:  normal |  Component:  Compiler (Type checker)
 Version:  7.6.1  |   Keywords: 
  Os:  Linux  |   Architecture:  x86_64 (amd64) 
 Failure:  GHC rejects valid program  |  Blockedby: 
Blocking: |Related: 
--+-
 GHC incorrectly rejects this program:
 {{{
 {-# LANGUAGE ExistentialQuantification, DataKinds, PolyKinds,
 KindSignatures, GADTs #-}
 module TestConstraintKinds where
 import GHC.Exts hiding (Any)

 data WrappedType = forall a. WrapType a

 data A :: WrappedType - * where
 MkA :: forall (a :: *). AW a - A (WrapType a)

 type AW  (a :: k) = A (WrapType a)
 type AW' (a :: k) = A (WrapType a)

 class C (a :: k) where
 aw :: AW a -- workaround: AW'

 instance C [] where
 aw = aw
 }}}

 GHC accepts the program when AW is replaced with AW' on that line.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7503
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #7504: hackage vector package yields ghc bug on raspberry pi

2012-12-16 Thread GHC
#7504: hackage vector package yields ghc bug on raspberry pi
-+--
Reporter:  plaeremans|  Owner: 
Type:  bug   | Status:  new
Priority:  normal|  Component:  Compiler   
 Version:  7.4.1 |   Keywords:  raspberry pi debian
  Os:  Linux |   Architecture:  arm
 Failure:  None/Unknown  |  Blockedby: 
Blocking:|Related: 
-+--
 See output below,


 {{{
 pieter@raspberrypi ~ $ cabal install vector
 Resolving dependencies...
 Configuring vector-0.10.0.1...
 Building vector-0.10.0.1...
 Preprocessing library vector-0.10.0.1...
 [ 1 of 19] Compiling Data.Vector.Storable.Internal (
 Data/Vector/Storable/Internal.hs,
 dist/build/Data/Vector/Storable/Internal.o )
 [ 2 of 19] Compiling Data.Vector.Fusion.Util ( Data/Vector/Fusion/Util.hs,
 dist/build/Data/Vector/Fusion/Util.o )
 [ 3 of 19] Compiling Data.Vector.Fusion.Stream.Size (
 Data/Vector/Fusion/Stream/Size.hs,
 dist/build/Data/Vector/Fusion/Stream/Size.o )

 Data/Vector/Fusion/Stream/Size.hs:25:10:
 Warning: No explicit method nor default method for `*'
 In the instance declaration for `Num Size'

 Data/Vector/Fusion/Stream/Size.hs:25:10:
 Warning: No explicit method nor default method for `abs'
 In the instance declaration for `Num Size'

 Data/Vector/Fusion/Stream/Size.hs:25:10:
 Warning: No explicit method nor default method for `signum'
 In the instance declaration for `Num Size'
 [ 4 of 19] Compiling Data.Vector.Internal.Check (
 Data/Vector/Internal/Check.hs, dist/build/Data/Vector/Internal/Check.o )
 [ 5 of 19] Compiling Data.Vector.Fusion.Stream.Monadic (
 Data/Vector/Fusion/Stream/Monadic.hs,
 dist/build/Data/Vector/Fusion/Stream/Monadic.o )
 ghc: panic! (the 'impossible' happened)
   (GHC version 7.4.1 for arm-unknown-linux):
 Cant do annotations without GHCi
 {Data/Vector/Fusion/Stream/Monadic.hs:104:19-33}
 base:GHC.Exts.ForceSpecConstr{d ra42}

 Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7504
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7471: Documentation bug: hs_init is incorrectly called in the example

2012-12-07 Thread GHC
#7471: Documentation bug: hs_init is incorrectly called in the example
-+--
Reporter:  dsign |   Owner:  simonmar 
Type:  bug   |  Status:  new  
Priority:  normal|   Milestone:  7.6.2
   Component:  Documentation | Version:   
Keywords:|  Os:  Unknown/Multiple 
Architecture:  Unknown/Multiple  | Failure:  Documentation bug
  Difficulty:  Unknown   |Testcase:   
   Blockedby:|Blocking:   
 Related:|  
-+--
Changes (by simonmar):

  * owner:  = simonmar
  * difficulty:  = Unknown
  * milestone:  = 7.6.2


Comment:

 Thanks, I'll fix that.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7471#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7471: Documentation bug: hs_init is incorrectly called in the example

2012-12-07 Thread GHC
#7471: Documentation bug: hs_init is incorrectly called in the example
-+--
Reporter:  dsign |   Owner:  simonmar 
Type:  bug   |  Status:  new  
Priority:  normal|   Milestone:  7.6.2
   Component:  Documentation | Version:   
Keywords:|  Os:  Unknown/Multiple 
Architecture:  Unknown/Multiple  | Failure:  Documentation bug
  Difficulty:  Unknown   |Testcase:   
   Blockedby:|Blocking:   
 Related:|  
-+--

Comment(by marlowsd@…):

 commit 250f02687eb6dc56394f1c6e9c4cc0aaa34b
 {{{
 Author: Simon Marlow marlo...@gmail.com
 Date:   Fri Dec 7 10:35:40 2012 +

 fix code in library initialisation example (#7471)

  docs/users_guide/ffi-chap.xml |   28 
  1 files changed, 16 insertions(+), 12 deletions(-)
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7471#comment:2
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7471: Documentation bug: hs_init is incorrectly called in the example

2012-12-07 Thread GHC
#7471: Documentation bug: hs_init is incorrectly called in the example
-+--
Reporter:  dsign |   Owner:  simonmar 
Type:  bug   |  Status:  merge
Priority:  normal|   Milestone:  7.6.2
   Component:  Documentation | Version:   
Keywords:|  Os:  Unknown/Multiple 
Architecture:  Unknown/Multiple  | Failure:  Documentation bug
  Difficulty:  Unknown   |Testcase:   
   Blockedby:|Blocking:   
 Related:|  
-+--
Changes (by simonmar):

  * status:  new = merge


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

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7471: Documentation bug: hs_init is incorrectly called in the example

2012-12-07 Thread GHC
#7471: Documentation bug: hs_init is incorrectly called in the example
+---
  Reporter:  dsign  |  Owner:  simonmar
  Type:  bug| Status:  closed  
  Priority:  normal |  Milestone:  7.6.2   
 Component:  Documentation  |Version:  
Resolution:  fixed  |   Keywords:  
Os:  Unknown/Multiple   |   Architecture:  Unknown/Multiple
   Failure:  Documentation bug  | Difficulty:  Unknown 
  Testcase: |  Blockedby:  
  Blocking: |Related:  
+---
Changes (by igloo):

  * status:  merge = closed
  * resolution:  = fixed


Comment:

 Merged as 723570dab0384e295ced98089703060fce52e616

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7471#comment:4
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7342: Memory violation bug in System.Posix.Env.putEnv

2012-12-02 Thread GHC
#7342: Memory violation bug in System.Posix.Env.putEnv
--+-
  Reporter:  SimonHengel  |  Owner:
  Type:  bug  | Status:  closed
  Priority:  normal   |  Milestone:
 Component:  libraries/unix   |Version:  7.4.2 
Resolution:  fixed|   Keywords:
Os:  Linux|   Architecture:  x86_64 (amd64)
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-
Changes (by igloo):

  * status:  patch = closed
  * difficulty:  = Unknown
  * resolution:  = fixed


Comment:

 Thanks for the patch! Applied to 7.6 as
 b95a003b20436863ef2f5fc01e6cd77f5bef94a0.

 Fixed in HEAD by:
 {{{
 commit b6b5fcbfd39a69b914f6af931856ef5af63393fc
 Author: Ian Lynagh i...@well-typed.com
 Date:   Sat Dec 1 22:28:50 2012 +

 Add newFilePath to System.Posix.Internals

 Needed for #7342
 }}}

 {{{
 commit 76dad7afeaef33576940b64a7b3be91d05434df5
 Author: Ian Lynagh i...@well-typed.com
 Date:   Sat Dec 1 22:31:48 2012 +

 Fix putenv; trac #7342

 We were freeing the string, but the string becomes part of the
 environment.
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7342#comment:5
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #7471: Documentation bug: hs_init is incorrectly called in the example

2012-12-02 Thread GHC
#7471: Documentation bug: hs_init is incorrectly called in the example
--+-
Reporter:  dsign  |  Owner:  
Type:  bug| Status:  new 
Priority:  normal |  Component:  Documentation   
 Version: |   Keywords:  
  Os:  Unknown/Multiple   |   Architecture:  Unknown/Multiple
 Failure:  Documentation bug  |  Blockedby:  
Blocking: |Related:  
--+-
 In the page

 http://www.haskell.org/ghc/docs/7.4.1/html/users_guide/ffi-ghc.html#ffi-
 library

 one of the examples in Using your own main() has some issues.

 See here http://stackoverflow.com/questions/13671429/is-this-typecast-
 correct/13671457#comment18765468_13671457  for more details.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7471
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7318: CONLIKE pragma documentation bug

2012-11-29 Thread GHC
#7318: CONLIKE pragma documentation bug
+---
  Reporter:  acowley|  Owner:  igloo   
  Type:  bug| Status:  closed  
  Priority:  normal |  Milestone:  7.6.2   
 Component:  Documentation  |Version:  7.6.1   
Resolution:  fixed  |   Keywords:  
Os:  Unknown/Multiple   |   Architecture:  Unknown/Multiple
   Failure:  Documentation bug  | Difficulty:  Unknown 
  Testcase: |  Blockedby:  
  Blocking: |Related:  
+---
Changes (by igloo):

  * status:  merge = closed
  * resolution:  = fixed


Comment:

 Merged as 003eb67f3380cd764d1bd6f94413eb0f062626b3

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7318#comment:5
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7342: Bug in System.Posix.Env.putEnv

2012-11-17 Thread GHC
#7342: Bug in System.Posix.Env.putEnv
-+--
 Reporter:  SimonHengel  |  Owner:
 Type:  bug  | Status:  patch 
 Priority:  normal   |  Component:  libraries/unix
  Version:  7.4.2|   Keywords:
   Os:  Linux|   Architecture:  x86_64 (amd64)
  Failure:  Incorrect result at runtime  |   Testcase:
Blockedby:   |   Blocking:
  Related:   |  
-+--
Changes (by SimonHengel):

  * status:  new = patch


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

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7342: Memory violation bug in System.Posix.Env.putEnv (was: Bug in System.Posix.Env.putEnv)

2012-11-17 Thread GHC
#7342: Memory violation bug in System.Posix.Env.putEnv
-+--
 Reporter:  SimonHengel  |  Owner:
 Type:  bug  | Status:  patch 
 Priority:  normal   |  Component:  libraries/unix
  Version:  7.4.2|   Keywords:
   Os:  Linux|   Architecture:  x86_64 (amd64)
  Failure:  Incorrect result at runtime  |   Testcase:
Blockedby:   |   Blocking:
  Related:   |  
-+--

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7342#comment:4
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7192: Bug in -fregs-graph with -fnew-codegen

2012-11-13 Thread GHC
#7192: Bug in -fregs-graph with -fnew-codegen
-+--
Reporter:  simonmar  |   Owner:  benl
Type:  bug   |  Status:  new 
Priority:  highest   |   Milestone:  7.8.1   
   Component:  Compiler  | Version:  7.7 
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  4258
 Related:|  
-+--

Comment(by simonmar):

 Aha! You're absolutely right, it's a bug, sorry about that.  I'm
 validating a fix right now.  I don't seem to be able to reproduce the
 original problem, but I've definitely fixed the missing `R1` dependency.

 I still think we need to look at the graph-colouring allocator though,
 because I think it is interacting badly with the code generated by the new
 code generator.  The code I've seen doesn't look great.  I'm leaving it
 turned off for the time being, and I'll make a separate ticket.

 If you could verify that you don't see the wrong answers any more after my
 patch, that would be great.  Patch coming shortly...

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7192#comment:9
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7192: Bug in -fregs-graph with -fnew-codegen

2012-11-13 Thread GHC
#7192: Bug in -fregs-graph with -fnew-codegen
-+--
Reporter:  simonmar  |   Owner:  benl
Type:  bug   |  Status:  new 
Priority:  highest   |   Milestone:  7.8.1   
   Component:  Compiler  | Version:  7.7 
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  4258
 Related:|  
-+--

Comment(by marlowsd@…):

 commit 4270d7e7485b124dd153399dfe3f571253dc0d1d
 {{{
 Author: Simon Marlow marlo...@gmail.com
 Date:   Tue Nov 13 11:43:09 2012 +

 Fix the Slow calling convention (#7192)

 The Slow calling convention passes the closure in R1, but we were
 ignoring this and hoping it would work, which it often did.  However,
 this bug seems to have been the cause of #7192, because the
 graph-colouring allocator is more sensitive to having correct liveness
 information on jumps.

  compiler/cmm/CmmCallConv.hs  |6 +++---
  compiler/cmm/CmmParse.y  |2 +-
  compiler/cmm/MkGraph.hs  |   32 
  compiler/codeGen/StgCmmBind.hs   |   21 +++--
  compiler/codeGen/StgCmmExpr.hs   |4 ++--
  compiler/codeGen/StgCmmHeap.hs   |   12 
  compiler/codeGen/StgCmmLayout.hs |2 +-
  7 files changed, 30 insertions(+), 49 deletions(-)
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7192#comment:10
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7192: Bug in -fregs-graph with -fnew-codegen

2012-11-12 Thread GHC
#7192: Bug in -fregs-graph with -fnew-codegen
-+--
Reporter:  simonmar  |   Owner:  benl
Type:  bug   |  Status:  new 
Priority:  highest   |   Milestone:  7.8.1   
   Component:  Compiler  | Version:  7.7 
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  4258
 Related:|  
-+--

Comment(by benl):

 On x86-32 compiling with the NCG with and without -fregs-graph causes a
 stack overflow in the compiled program, but with -fllvm it works fine.
 Maybe the register liveness determinator is broken, because this is used
 by both the linear and graph coloring allocators.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7192#comment:4
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7192: Bug in -fregs-graph with -fnew-codegen

2012-11-12 Thread GHC
#7192: Bug in -fregs-graph with -fnew-codegen
-+--
Reporter:  simonmar  |   Owner:  benl
Type:  bug   |  Status:  new 
Priority:  highest   |   Milestone:  7.8.1   
   Component:  Compiler  | Version:  7.7 
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  4258
 Related:|  
-+--

Comment(by simonmar):

 @benl: are you saying the `dph-diophantine-opt` test is broken in master
 at the moment?

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7192#comment:5
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7192: Bug in -fregs-graph with -fnew-codegen

2012-11-12 Thread GHC
#7192: Bug in -fregs-graph with -fnew-codegen
-+--
Reporter:  simonmar  |   Owner:  benl
Type:  bug   |  Status:  new 
Priority:  highest   |   Milestone:  7.8.1   
   Component:  Compiler  | Version:  7.7 
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  4258
 Related:|  
-+--

Comment(by benl):

 @simonmar: yes. It looks like the NCG (or something) is broken
 independently from the graph allocator.

 When compiling with -fllvm I get the right answer:

 {{{
 desire:diophantine benl$ pwd
 /Users/benl/devel/ghc/ghc-head-devel/testsuite/tests/dph/diophantine

 desire:diophantine benl$ /Users/benl/devel/ghc/ghc-head-devel/inplace/bin
 /ghc-stage2 --version
 The Glorious Glasgow Haskell Compilation System, version 7.7.20121112

 desire:diophantine benl$ /Users/benl/devel/ghc/ghc-head-devel/inplace/bin
 /ghc-stage2 \
   -fforce-recomp -dcore-lint -dcmm-lint \
   --make -o dph-diophantine-copy-fast Main \
   -O -fno-enable-rewrite-rules -package dph-lifted-copy -fllvm

 desire:diophantine benl$ ./dph-diophantine-copy-fast
 (1260,[2,2,1,1,0])
 (1260,[2,2,1,1,0])
 (1260,fromListPArray [2,2,1,1,0])
 }}}

 But with with NCG `-fno-regs-graph` it gives a different answer:
 {{{
 desire:diophantine benl$ /Users/benl/devel/ghc/ghc-head-devel/inplace/bin
 /ghc-stage2 \
   -fforce-recomp -dcore-lint -dcmm-lint \
   --make -o dph-diophantine-copy-fast Main \
   -O -fno-enable-rewrite-rules -package dph-lifted-copy -fno-regs-graph

 desire:diophantine benl$ ./dph-diophantine-copy-fast
 dph-diophantine-copy-fast: Prelude.minimum: empty list
 }}}

 Compiling in different ways by typing `make` in that same directory
 sometimes causes a stack overflow instead of `Prelude.minimum: empty list`

 I looked through the output assembly code but didn't find code code
 sequence in your initial report. My approach was to compile with `-ddump-
 cmmz-sp -ddump-to-file` then grep

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7192#comment:6
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7192: Bug in -fregs-graph with -fnew-codegen

2012-11-12 Thread GHC
#7192: Bug in -fregs-graph with -fnew-codegen
-+--
Reporter:  simonmar  |   Owner:  benl
Type:  bug   |  Status:  new 
Priority:  highest   |   Milestone:  7.8.1   
   Component:  Compiler  | Version:  7.7 
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  4258
 Related:|  
-+--

Comment(by benl):

 ... (continued from previous)... the cmm code for the sequence you had.
 For this I compiled the Haskell code with `-Odph` to get array fusion and
 `-fregs-graph` to turn the graph allocator back on.

 {{{
 desire:diophantine benl$ /Users/benl/devel/ghc/ghc-head-devel/inplace/bin
 /ghc-stage2 \
   -fforce-recomp -dcore-lint -dcmm-lint --make -o dph-diophantine-copy \
   Main -Odph -fregs-graph -package dph-lifted-copy \
   -ddump-cmmz-sp -ddump-asm -ddump-to-file

 desire:diophantine benl$ ./dph-diophantine-copy
 Stack space overflow: current size 8388608 bytes.
 Use `+RTS -Ksize -RTS' to increase it.

 desire:diophantine benl$ grep -B 8 -A 16 if (Sp - 96  SpLim) \
   DiophantineVect.dump-cmmz-sp  dump-entry.cmm
 }}}

 From this I get about 12 blocks of cmm code that look like the one in your
 report. I checked the corresponding asm code and didn't see any register
 allocation problems. A few of the proc entry blocks assign to `%rbx`, but
 the original value this register had on entry to the proc is restored
 before issuing `jmp *-8(%r13)`, which I assume invokes the GC.

 However, I do notice that some of the calls to `stg_gc_fun` in the cmm
 code have `R1` arguments, and some don't.

 {{{
 c1cr6:
   _s12rI::P64 = R6;
   _s12rF::I64 = R5;
   _s12rU::I64 = R4;
   _s12rA::I64 = R3;
   _s12rD::I64 = R2;
   _s12rZ::P64 = R1;
   if (Sp - 96  SpLim) goto c1crZ; else goto c1cs2;
   ...

 c1crZ:
   R1 = _s12rZ::P64;
   I64[Sp - 40] = _s12rD::I64;
   I64[Sp - 32] = _s12rA::I64;
   I64[Sp - 24] = _s12rU::I64;
   I64[Sp - 16] = _s12rF::I64;
   P64[Sp - 8] = _s12rI::P64;
   Sp = Sp - 40;
   call (stg_gc_fun)() args: 48, res: 0, upd: 8;  *** no R1
 argument here
 }}}

 But then:
 {{{
 offset
   c1eWQ:
   _s17H9::P64 = R1;
   if (Sp - 96  SpLim) goto c1eXm; else goto c1eXl;
   ...
   c1eXm:
   R1 = _s17H9::P64;
   call (stg_gc_fun)(R1) args: 8, res: 0, upd: 8;  *** got an R1
 here
 }}}

 If `R1` needs to valid at *every* call to stg_gc_fun, then you need to
 pass it as an argument or the register liveness determinator will mark it
 as dead -- and no good will come from that.

 {{{
 c1crZ:
 movq %vI_s12rZ,%rbx
 # born:%r1
 # r_dying: %vI_s12rZ
 # w_dying: %r1  R1 dies here

 movq %vI_s12rD,-40(%rbp)
 # r_dying: %vI_s12rD

 movq %vI_s12rA,-32(%rbp)
 # r_dying: %vI_s12rA

 movq %vI_s12rU,-24(%rbp)
 # r_dying: %vI_s12rU

 movq %vI_s12rF,-16(%rbp)
 # r_dying: %vI_s12rF

 movq %vI_s12rI,-8(%rbp)
 # r_dying: %vI_s12rI

 addq $-40,%rbp

 jmp *-8(%r13)
 }}}

 If the `stg_gc_fun()` thing is correct then can you tell me how to find
 the assembly sequence in your initial report? I can hack on it this week.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7192#comment:7
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7192: Bug in -fregs-graph with -fnew-codegen

2012-11-12 Thread GHC
#7192: Bug in -fregs-graph with -fnew-codegen
-+--
Reporter:  simonmar  |   Owner:  benl
Type:  bug   |  Status:  new 
Priority:  highest   |   Milestone:  7.8.1   
   Component:  Compiler  | Version:  7.7 
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  4258
 Related:|  
-+--

Comment(by benl):

 Yeah, if the liveness determinator can't see R1 being read in the block
 that calls stg_gc_fun, then it the allocator isn't obliged to preserve
 it's value across the jump. I think your original cmm code is malformed.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7192#comment:8
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7369: Simplifier bug(?)

2012-11-01 Thread GHC
#7369: Simplifier bug(?)
---+
  Reporter:  sweirich  |  Owner:  
  Type:  bug   | Status:  closed  
  Priority:  normal|  Milestone:  
 Component:  Compiler  |Version:  7.6.1   
Resolution:  duplicate |   Keywords:  
Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
   Failure:  Other | Difficulty:  Unknown 
  Testcase:|  Blockedby:  
  Blocking:|Related:  
---+

Comment(by sweirich):

 Ah, not a dup of #1495 (which related but uses newtypes and is reported
 fixed),  but it is a duplicate of #5400 (which uses GADTs).

 Also related to #3872.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7369#comment:2
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7369: Simplifier bug(?)

2012-11-01 Thread GHC
#7369: Simplifier bug(?)
---+
  Reporter:  sweirich  |  Owner:  
  Type:  bug   | Status:  closed  
  Priority:  normal|  Milestone:  
 Component:  Compiler  |Version:  7.6.1   
Resolution:  duplicate |   Keywords:  
Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
   Failure:  Other | Difficulty:  Unknown 
  Testcase:|  Blockedby:  
  Blocking:|Related:  
---+

Comment(by sweirich):

 Replying to [comment:2 sweirich]:
  Ah, not a dup of #1495 (which related but uses newtypes and is reported
 fixed),  but it is a duplicate of #5400 (which uses GADTs).
 
  Also related to #3872.

 Oops, I meant is a duplicate of #3872 and (perhaps) related to #5400.

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

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7369: Simplifier bug(?)

2012-11-01 Thread GHC
#7369: Simplifier bug(?)
---+
  Reporter:  sweirich  |  Owner:  
  Type:  bug   | Status:  closed  
  Priority:  normal|  Milestone:  
 Component:  Compiler  |Version:  7.6.1   
Resolution:  duplicate |   Keywords:  
Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
   Failure:  Other | Difficulty:  Unknown 
  Testcase:|  Blockedby:  
  Blocking:|Related:  
---+

Comment(by simonpj):

 Also #5448, #5722, #7057

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7369#comment:4
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #7369: Simplifier bug(?)

2012-10-26 Thread GHC
#7369: Simplifier bug(?)
--+-
 Reporter:  sweirich  |  Owner:  
 Type:  bug   | Status:  new 
 Priority:  normal|  Component:  Compiler
  Version:  7.6.1 |   Keywords:  
   Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
  Failure:  Other |   Testcase:  
Blockedby:|   Blocking:  
  Related:|  
--+-
 Not sure if it is really a bug.  I was playing around with the following
 infinite loop in GHC 7.6:

 {{{

 {-# LANGUAGE GADTs, KindSignatures #-}

 data False

 data I (c :: * - *)

 data R (c :: *) where
   R :: (a (I a) - False) - R (I a)

 delta :: R (I R) - False
 delta = \ (R f) - f (R f)

 omega :: False
 omega = delta (R delta)

 main :: IO ()
 main = seq omega (return ())

 }}}

 And I got the following result.  It's supposed to be an infinite loop,
 though, so maybe it is ok. GHC 7.4 just hangs on this example.

 {{{
 spaceman:haskell sweirich$ ghc inj4.hs
 [1 of 1] Compiling Main ( inj4.hs, inj4.o )
 ghc: panic! (the 'impossible' happened)
   (GHC version 7.6.1 for i386-apple-darwin):
 Simplifier ticks exhausted
 When trying UnfoldingDone main:Main.$WR{v reV} [gid[DataConWrapper]]
 To increase the limit, use -fsimpl-tick-factor=N (default 100)
 If you need to do this, let GHC HQ know, and what factor you needed
 To see detailed counts use -ddump-simpl-stats
 Total ticks: 5160

 Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7369
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7369: Simplifier bug(?)

2012-10-26 Thread GHC
#7369: Simplifier bug(?)
---+
  Reporter:  sweirich  |  Owner:  
  Type:  bug   | Status:  closed  
  Priority:  normal|  Milestone:  
 Component:  Compiler  |Version:  7.6.1   
Resolution:  duplicate |   Keywords:  
Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
   Failure:  Other | Difficulty:  Unknown 
  Testcase:|  Blockedby:  
  Blocking:|Related:  
---+
Changes (by simonpj):

  * status:  new = closed
  * difficulty:  = Unknown
  * resolution:  = duplicate


Comment:

 I think this is a dup of GHC's russel-paradox bug: #1495.  Re-open if you
 disagree.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7369#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7318: CONLIKE pragma documentation bug

2012-10-25 Thread GHC
#7318: CONLIKE pragma documentation bug
-+--
Reporter:  acowley   |   Owner:  igloo
Type:  bug   |  Status:  new  
Priority:  normal|   Milestone:  7.6.2
   Component:  Documentation | Version:  7.6.1
Keywords:|  Os:  Unknown/Multiple 
Architecture:  Unknown/Multiple  | Failure:  Documentation bug
  Difficulty:  Unknown   |Testcase:   
   Blockedby:|Blocking:   
 Related:|  
-+--

Comment(by ian@…):

 commit e0c77c9f0729c105dddc5ce3fc79e117951719ba
 {{{
 Author: Ian Lynagh i...@well-typed.com
 Date:   Thu Oct 25 20:54:41 2012 +0100

 Fix doc typo; fixes #7318

  docs/users_guide/glasgow_exts.xml |2 +-
  1 files changed, 1 insertions(+), 1 deletions(-)
 }}}

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

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7318: CONLIKE pragma documentation bug

2012-10-25 Thread GHC
#7318: CONLIKE pragma documentation bug
-+--
Reporter:  acowley   |   Owner:  igloo
Type:  bug   |  Status:  merge
Priority:  normal|   Milestone:  7.6.2
   Component:  Documentation | Version:  7.6.1
Keywords:|  Os:  Unknown/Multiple 
Architecture:  Unknown/Multiple  | Failure:  Documentation bug
  Difficulty:  Unknown   |Testcase:   
   Blockedby:|Blocking:   
 Related:|  
-+--
Changes (by igloo):

  * status:  new = merge


Comment:

 Thanks for the report; fixed.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7318#comment:4
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #7342: Bug in System.Posix.Env.putEnv

2012-10-17 Thread GHC
#7342: Bug in System.Posix.Env.putEnv
-+--
 Reporter:  SimonHengel  |  Owner:
 Type:  bug  | Status:  new   
 Priority:  normal   |  Component:  libraries/unix
  Version:  7.4.2|   Keywords:
   Os:  Linux|   Architecture:  x86_64 (amd64)
  Failure:  Incorrect result at runtime  |   Testcase:
Blockedby:   |   Blocking:
  Related:   |  
-+--
 {{{putEnv}}} frees the marshaled string after calling {{{c_putenv}}}.
 This leads to unpredictable behavior, as the string becomes part of the
 environment and should not be freed.

 See [http://pubs.opengroup.org/onlinepubs/007908799/xsh/putenv.html
 SUSv2]:

  ... the string pointed to by string shall become part of the
  environment ...

 The issue is reproducible with the following QC property:

 {{{
 import   Test.QuickCheck
 import   Test.QuickCheck.Property
 import   System.Posix.Env
 import   Data.IORef
 import qualified Data.Map as Map
 import   Control.Applicative

 isValidKey :: String - Bool
 isValidKey   k = '\NUL' `notElem` k  '=' `notElem` k  (not . null) k

 isValidValue :: String - Bool
 isValidValue v = '\NUL' `notElem` v  (not . null) v

 main :: IO ()
 main = do
   env' - getEnvironment = newIORef . Map.fromList
   quickCheck $ \k v - isValidKey k == isValidValue v ==
 morallyDubiousIOProperty $ do
 putEnv (k ++ = ++ v)
 modifyIORef env' (Map.insert k v)
 (==) $ readIORef env' * (Map.fromList $ getEnvironment)
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7342
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7342: Bug in System.Posix.Env.putEnv

2012-10-17 Thread GHC
#7342: Bug in System.Posix.Env.putEnv
-+--
 Reporter:  SimonHengel  |  Owner:
 Type:  bug  | Status:  new   
 Priority:  normal   |  Component:  libraries/unix
  Version:  7.4.2|   Keywords:
   Os:  Linux|   Architecture:  x86_64 (amd64)
  Failure:  Incorrect result at runtime  |   Testcase:
Blockedby:   |   Blocking:
  Related:   |  
-+--

Comment(by SimonHengel):

 Changing {{{putEnv}}} to

 {{{
 putEnv keyvalue = newCString keyvalue = throwErrnoIfMinus1_ putenv .
 c_putenv
 }}}

 fixes the issue.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7342#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7342: Bug in System.Posix.Env.putEnv

2012-10-17 Thread GHC
#7342: Bug in System.Posix.Env.putEnv
-+--
 Reporter:  SimonHengel  |  Owner:
 Type:  bug  | Status:  new   
 Priority:  normal   |  Component:  libraries/unix
  Version:  7.4.2|   Keywords:
   Os:  Linux|   Architecture:  x86_64 (amd64)
  Failure:  Incorrect result at runtime  |   Testcase:
Blockedby:   |   Blocking:
  Related:   |  
-+--

Comment(by SimonHengel):

 While looking at the code, I discovered an other minor issue.  I opened a
 separate ticket for that (#7343).

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7342#comment:2
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7318: CONLIKE pragma documentation bug

2012-10-14 Thread GHC
#7318: CONLIKE pragma documentation bug
-+--
Reporter:  acowley   |   Owner:  igloo
Type:  bug   |  Status:  new  
Priority:  normal|   Milestone:  7.6.2
   Component:  Documentation | Version:  7.6.1
Keywords:|  Os:  Unknown/Multiple 
Architecture:  Unknown/Multiple  | Failure:  Documentation bug
  Difficulty:  Unknown   |Testcase:   
   Blockedby:|Blocking:   
 Related:|  
-+--
Changes (by igloo):

  * milestone:  = 7.6.2


-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7318#comment:2
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7318: CONLIKE pragma documentation bug

2012-10-12 Thread GHC
#7318: CONLIKE pragma documentation bug
-+--
Reporter:  acowley   |   Owner:  igloo
Type:  bug   |  Status:  new  
Priority:  normal|   Milestone:   
   Component:  Documentation | Version:  7.6.1
Keywords:|  Os:  Unknown/Multiple 
Architecture:  Unknown/Multiple  | Failure:  Documentation bug
  Difficulty:  Unknown   |Testcase:   
   Blockedby:|Blocking:   
 Related:|  
-+--
Changes (by simonpj):

  * owner:  = igloo
  * difficulty:  = Unknown


Comment:

 Thanks!

 Ian: can you fix this please?  Thanks.

 Simon

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7318#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #7318: CONLIKE pragma documentation bug

2012-10-10 Thread GHC
#7318: CONLIKE pragma documentation bug
---+
 Reporter:  acowley|  Owner:  
 Type:  bug| Status:  new 
 Priority:  normal |  Component:  Documentation   
  Version:  7.6.1  |   Keywords:  
   Os:  Unknown/Multiple   |   Architecture:  Unknown/Multiple
  Failure:  Documentation bug  |   Testcase:  
Blockedby: |   Blocking:  
  Related: |  
---+
 The documentation [http://www.haskell.org/ghc/docs/7.6.1/html/users_guide
 /rewrite-rules.html example],
 {{{
 {-# INLINE[1] CONLIKE f #-}
 f x = blah
 }}}
 results in a parse error in 7.6.1, but is accepted if the pragma is
 instead written as
 {{{
 {-# INLINE CONLIKE [1] #-}
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7318
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7192: Bug in -fregs-graph with -fnew-codegen

2012-09-03 Thread GHC
#7192: Bug in -fregs-graph with -fnew-codegen
-+--
Reporter:  simonmar  |   Owner:  
Type:  bug   |  Status:  new 
Priority:  highest   |   Milestone:  7.8.1   
   Component:  Compiler  | Version:  7.7 
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  4258
 Related:|  
-+--

Comment(by marlowsd@…):

 commit 4f656e89e802f3238c5d6cf1cd9bc420cd7f42ff
 {{{
 Author: Simon Marlow marlo...@gmail.com
 Date:   Tue Aug 28 16:10:48 2012 +0100

 disable -fregs-graph (#7192)

  compiler/main/DynFlags.hs |3 ++-
  1 files changed, 2 insertions(+), 1 deletions(-)
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7192#comment:2
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7192: Bug in -fregs-graph with -fnew-codegen

2012-09-03 Thread GHC
#7192: Bug in -fregs-graph with -fnew-codegen
-+--
Reporter:  simonmar  |   Owner:  benl
Type:  bug   |  Status:  new 
Priority:  highest   |   Milestone:  7.8.1   
   Component:  Compiler  | Version:  7.7 
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  4258
 Related:|  
-+--
Changes (by benl):

  * owner:  = benl


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

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-09-01 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner: 
  Type:  bug  | Status:  closed 
  Priority:  high |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:  fixed|   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-
Changes (by pcapriotti):

  * status:  merge = closed
  * resolution:  = fixed


Comment:

 Merged as ef4218994742e8400a48b4d6e1ae7e6b67650dc4.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:45
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-23 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  patch  
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-
Changes (by erikd):

  * status:  new = patch


-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:41
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-23 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner: 
  Type:  bug  | Status:  new
  Priority:  high |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-
Changes (by simonmar):

  * owner:  igloo =
  * priority:  normal = high
  * status:  patch = new


Comment:

 Nice catch! I'll push and try to get it merged into 7.6.1.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:42
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-23 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner: 
  Type:  bug  | Status:  new
  Priority:  high |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-

Comment(by erikd@…):

 commit b4b78631890a4cd9cde1551de9a4440e7e750372
 {{{
 Author: Erik de Castro Lopo er...@mega-nerd.com
 Date:   Thu Aug 23 20:39:47 2012 +1000

 Fix for optimizer bug on linux-powerpc (#6156).

  compiler/nativeGen/PPC/CodeGen.hs |8 
  1 files changed, 4 insertions(+), 4 deletions(-)
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:43
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-23 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner: 
  Type:  bug  | Status:  merge  
  Priority:  high |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-
Changes (by simonmar):

  * status:  new = merge


-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:44
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-22 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-

Comment(by erikd):

 Thanks @simonmar, thats a good tip. Using the FFI:

 {{{
 import Foreign.C.Types
 import Numeric

 foreign import ccall c_printInt64 printInt64 :: CLLong - IO ()

 main :: IO ()
 main = do
 printInt64 input
 putStrLn (showHex input )

 input :: CLLong
 input = 0x1a2a3a4a5a6a7a8a
 }}}

 and compiled without optimisation I get:

 {{{
 1a2a3a4a5a6a7a8a
 1a2a3a4a5a6a7a8a
 }}}

 and with optimisation I get:

 {{{
 7a8a
 1a2a3a4a5a6a7a8a
 }}}

 which is weird in that the FFI version is incorrect, but only when
 optimisation is off.

 Modifying this example as:

 {{{
 import Foreign.C.Types
 import Numeric

 foreign import ccall c_printInt64 printInt64 :: CLLong - IO ()

 main :: IO ()
 main = do
 printInt64 (succ input)
 putStrLn (showHex (succ input) )

 input :: CLLong
 input = 0x1a2a3a4a5a6a7a8a
 }}}

 and then both the FFI and the pure Haskell version are incorrect with
 optimisation.

 This suggests that its actually a problem with the way 64 bit values are
 passed to functions.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:38
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-22 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-

Comment(by simonmar):

 Replying to [comment:38 erikd]:

  foreign import ccall c_printInt64 printInt64 :: CLLong - IO ()

 Add unsafe here to make the generated code simpler.

  main :: IO ()
  main = do
  printInt64 input
  putStrLn (showHex input )

 suggest getting rid of the `putStrLn`, again to make things simpler.

  and compiled without optimisation I get:
 
  {{{
  1a2a3a4a5a6a7a8a
  1a2a3a4a5a6a7a8a
  }}}
 
  and with optimisation I get:
 
  {{{
  7a8a
  1a2a3a4a5a6a7a8a
  }}}
 
  which is weird in that the FFI version is incorrect, but only when
 optimisation is off.

 Did you mean to say ''on'' here?

  This suggests that its actually a problem with the way 64 bit values are
 passed to functions.

 Yes, probably.

 So now you have a very simple example that generates incorrect code and
 doesn't call any library functions, the bug must be somewhere in the
 generated code for this module.  Compile it with -S and eyeball the
 assembly code.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:39
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-22 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-

Comment(by erikd):

 Replying to [comment:39 simonmar]:
   which is weird in that the FFI version is incorrect, but only when
 optimisation is off.
 
  Did you mean to say ''on'' here?

 Yes.

 Simplifying the haskell code (adding unsafe as suggested):

 {{{
 import Foreign.C.Types
 import Numeric

 foreign import ccall unsafe c_printInt64 printInt64 :: CLLong - IO ()

 main :: IO ()
 main = printInt64 input

 input :: CLLong
 input = 0x1a2a3a4a5a6a7a8a
 }}}

 compiles to the following ASM:

 {{{
 Main.main1_info:
 _c1ni:
 lis 31, 0; r31 = 0
 ori 31, 31, 31370; r31 |= 0x7a8a
 lis 30, 0; r30 = 0
 ori 31, 31, 0; r30 |= 0
 mr  3, 30; r3 = r30
 mr  4, 31; r4 = r31
 bl  c_printInt64
 lis 14, GHC.Tuple.()_closure+1@ha
 addi14, 14, GHC.Tuple.()_closure+1@l
 lwz 31, 0(22)
 mtctr   31
 bctr
 }}}

 Obviously the generated code is wrong. Looking at the PPC code generator
 now.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:40
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-21 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-

Comment(by erikd):

 Digging deeper:

 {{{
 {-# LANGUAGE MagicHash #-}
 import GHC.Int
 import GHC.Word
 import GHC.IntWord64
 import Numeric (showHex)

 main :: IO ()
 main = putStrLn (showHex (wordToInt64 input) )

 input :: Word64
 input = 0x1a2a3a4a5a6a7a8a

 wordToInt64 :: Word64 - Int64
 wordToInt64 (W64# x) = I64# (word64ToInt64# x)
 }}}

 also gives an incorrect result when optimisation is on. The
 `word64ToInt64#` is foreign imported as:

 {{{
 foreign import ccall unsafe hs_word64ToInt64 word64ToInt64# :: Word64#
 - Int64#
 }}}

 and `hs_word64ToInt64` is defined in C as :

 {{{
 HsInt64  hs_word64ToInt64 (HsWord64 w) {return (HsInt64)  w;}
 }}}

 and testing that function in isolation in a small C program shows no
 problem.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:35
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-21 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-

Comment(by erikd):

 The CMM code generated on powerpc is identical to the CMM code generated
 on i386.

 That suggests that the problem is the powerpc specific CMM - ASM stage.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:36
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-21 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-

Comment(by simonmar):

 You could make the program even simpler by passing the result to a
 foreign-imported C function to print it out, instead of using `showHex`.
 Then you would be using no library code at all, and you should be able to
 trace through the assembly to figure out where something has gone wrong
 (unfortunatey I don't read PPC assembler so I'm no use here).

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:37
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-20 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-

Comment(by erikd):

 New example:

 {{{
 import GHC.Word
 import Numeric

 main :: IO ()
 main = putStrLn (showHex (incr (0xa1a2a3a4a5a6a7a8 :: Word64)) )

 incr :: Word64 - Word64
 incr x = x + 1
 }}}

 results in the following optimised C-- code:

 {{{
 c1PM:
 I32[Sp - 8] = stg_bh_upd_frame_info;
 I32[Sp - 4] = Hp - 4;
 I64[Sp - 16] = 1 :: W64;
 I64[Sp - 24] = 11647051513882650536 :: W64;
 Sp = Sp - 24;
 jump GHC.Word.$w$c+_info; // []
 }}}

 which gets converted to the following assembler:

 {{{
 _c1PM:
 lis 31, stg_bh_upd_frame_info@ha
 addi31, 31, stg_bh_upd_frame_info@l
 stw 31, -8(22)
 addi31, 25, -4
 stw 31, -4(22)
 lis 31, 0
 ori 31, 31, 1
 lis 30, 0
 ori 31, 31, 0
 stw 31, -12(22)
 stw 30, -16(22)
 lis 31, 0
 ori 31, 31, 42920
 lis 30, 0
 ori 31, 31, 0
 stw 31, -20(22)
 stw 30, -24(22)
 addi22, 22, -24
 b   GHC.Word.$w$c+_info
 }}}

 The assembler looks correct suggesting that the only thing that could be
 going wrong is the function `GHC.Word.$w$c+_info`.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:34
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-14 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-

Comment(by erikd):

 I'll continuue gathering more data. Latest point of interest is this code:

 {{{
 import GHC.Word
 import Numeric
 main :: IO ()
 main = putStrLn (showHex (succ (0xa1a2a3a4 :: Word64)) )
 }}}

 Compiled with `-O1 -fno-enable-rewrite-rules` this produces th correct
 result of `a1a2a3a5`, but just a plain `-O1` this results in:

 {{{
 Enum.succ{Word64}: tried to take `succ' of maxBound
 }}}

 which is rather weird. Its complaining about the least significant Word32
 of the Word64 being equal to maxBound (which I'm assuming is the 32 bit
 maxBound). Something there seems very wrong.

 I've been looking at a lot of the dump files as well. In the case of the
 code above, I've been looking for invocations of `succ` and get for
 instance this in `dump-prep`:

 {{{
 Main.main_w :: GHC.Word.Word64
 [GblId, Caf=NoCafRefs, Unf=OtherCon []]
 Main.main_w = GHC.Word.W64# (__word64 16)

 Main.main3 :: GHC.Word.Word64
 [GblId]
 Main.main3 = GHC.Word.$w$csucc (__word64 11647051515398455295)

 Main.main2 :: GHC.Base.String
 [GblId]
 Main.main2 =
   Numeric.$wshowIntAtBase
 @ GHC.Word.Word64
 GHC.Word.$fRealWord64
 GHC.Word.$fIntegralWord64_$cquotRem
 GHC.Word.$fEnumWord64_$ctoInteger
 GHC.Word.$fShowWord64
 Main.main_w
 GHC.Show.intToDigit
 Main.main3
 (GHC.Types.[] @ GHC.Types.Char)
 }}}

 Debugging continues.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:31
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-14 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-

Comment(by erikd):

 Similar to the case of `succ` in the previous comment `pred` also
 misbehaves. This:

 {{{
 putStrLn (showHex (pred (0xa1a2a3a5 :: Word64)) )
 }}}

 results in:

 {{{
 Enum.pred{Word64}: tried to take `pred' of minBound
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:32
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-14 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-

Comment(by erikd):

 Pulling `succ` out of the `Enum` typeclass into a standalone program we
 get:

 {{{
 import GHC.Word
 import Numeric

 main :: IO ()
 main = putStrLn (showHex (succWord64 (0xa1a2a3a3 :: Word64)) )

 succWord64 :: Word64 - Word64
 succWord64 x =
 if x /= (0x::Word64)
 then x + 1
 else error succWord64
 }}}

 It still works correctly without optimisation and fails with it.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:33
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-13 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  igloo  
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone:  7.6.1  
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-
Changes (by simonpj):

  * owner:  pcapriotti = igloo


Comment:

 Ian will work with erikd to figure out what is happening here.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:30
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-12 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:  7.6.1 
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-

Comment(by erikd):

 Another example program which produces different results optimised vs un-
 optimised:

 {{{
 import GHC.Word

 main :: IO ()
 main = print (input, input + 1)

 input :: Word64
 input = 0xa1a2a3a4a5a6a7a8
 }}}

 In this case word64ToWord does not get called and neither does quotRem.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:29
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-11 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:  7.6.1 
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-

Comment(by erikd):

 The program also gives the different result (optimised vs unoptimised) on
 powerpc:

 {{{
 import GHC.Word

 main :: IO ()
 main = putStrLn $ show $ quotRem input 1

 input :: Word64
 input = 0xa1a2a3a4a5a6a7a8
 }}}

 but gives the correct answer on i386 and x86-64.

 In previous tests, the optimised version of the program calls `quotRem`
 and the unoptimised version does not.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:28
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-08-09 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:  7.6.1 
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-

Comment(by erikd):

 Have some time to work on this again. The problem revolves around the
 following function:

 {{{
 word64ToWord32 :: Word64 - Word32
 word64ToWord32 (W64# x) = W32# (word64ToWord# x)
 }}}

 where `word64ToWord#` is defined in `libraries/ghc-prim/GHC/IntWord64.hs`
 as:

 {{{
 foreign import ccall unsafe hs_word64ToWord word64ToWord# :: Word64# -
 Word#
 }}}

 and `hs_word64ToWord` is defined `libraries/ghc-prim/cbits/longlong.c` as:

 {{{
 HsWord   hs_word64ToWord  (HsWord64 w) {return (HsWord)   w;}
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:26
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7088: Float-in bug

2012-07-23 Thread GHC
#7088: Float-in bug
-+--
Reporter:  simonpj   |   Owner:  
Type:  bug   |  Status:  new 
Priority:  normal|   Milestone:  
   Component:  Compiler  | Version:  7.4.2   
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  
 Related:|  
-+--

Comment(by simonpj@…):

 commit b498b9983b75b8b7c3a365c1b44e85cbddd09648
 {{{
 Author: Simon Peyton Jones simo...@microsoft.com
 Date:   Mon Jul 23 17:29:07 2012 +0100

 Fix a subtle float-in bug

 This patch makes
   fiExpr (AnnLam ...)
   noFloatIntoExpr (AnnLam ...)
 line up with each other.  Previously they behaved inconsistently
 with bad results.

 The details are in Trac #7088.There's a regression test
 in simplCore/should_compile/T7088

  compiler/simplCore/FloatIn.lhs |   24 +---
  1 files changed, 13 insertions(+), 11 deletions(-)
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7088#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7088: Float-in bug

2012-07-23 Thread GHC
#7088: Float-in bug
-+--
  Reporter:  simonpj |  Owner:  
  Type:  bug | Status:  closed  
  Priority:  normal  |  Milestone:  
 Component:  Compiler|Version:  7.4.2   
Resolution:  fixed   |   Keywords:  
Os:  Unknown/Multiple|   Architecture:  Unknown/Multiple
   Failure:  None/Unknown| Difficulty:  Unknown 
  Testcase:  simplCore/should_compile/T7088  |  Blockedby:  
  Blocking:  |Related:  
-+--
Changes (by simonpj):

  * status:  new = closed
  * testcase:  = simplCore/should_compile/T7088
  * resolution:  = fixed


-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7088#comment:2
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #7088: Float-in bug

2012-07-20 Thread GHC
#7088: Float-in bug
-+--
Reporter:  simonpj   |   Owner:  
Type:  bug   |  Status:  new 
Priority:  normal|   Milestone:  
   Component:  Compiler  | Version:  7.4.2   
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  
 Related:|  
-+--
 Consider
 {{{
   let   m = e
foo = \(s:State) (x:Int). body
   in ...(foo s x)...
 }}}
 Then `loatIn.noFloatIntoRhs` will say `False`, because the top-level
 lambda is oneshot
 But the attempt to float into the lambda-group will fail, leaving
 {{{
   foo = let m = e in \s x. body
 }}}
 That changes foo’s arity, which is bad.

 Moreover, m might have been marked “demanded” in the original program, by
 the clever strictness analyser.  Then the Simplifier will not float the
 m-binding back out of ‘foo’, because it thinks that might make it lazier.

 So then the Simplifier leaves the m-binding in foo’s RHS, and then eta-
 expands it, giving
 {{{
foo = \s. let m = e in \x. body
 }}}
 which is very bad:
 {{{
 *** Core Lint errors : in result of Simplifier ***
 {-# LINE 11 Float.hs #-}: Warning:
 [RHS of f_snv :: GHC.Prim.State# GHC.Prim.RealWorld
  - GHC.Types.Int
  - (# GHC.Types.Int, GHC.Prim.State#
 GHC.Prim.RealWorld #)]
 Demand type has  2  arguments, rhs has  1 arguments,  f_snv
 Binder's strictness signature: DmdType LL
 *** Offending Program ***
 }}}

 It's hard to trigger this bug but Geoff managed to, and this code does it:
 {{{
 {-# LANGUAGE MagicHash, UnboxedTuples #-}

 module Float where

 import GHC.Prim

 foo vs
   = let w = if length (reverse vs)  10 then Just (length vs) else Nothing

 f :: State# RealWorld - Int - (# Int, State# RealWorld #)
 f s x | Just 0 - w = case f s (x+1) of
 (# r, s' #) - (# r, s' #)
   | otherwise = (# x, s #)

 in f realWorld# 1
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7088
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #7078: Requested to report bug as below.

2012-07-16 Thread GHC
#7078: Requested to report bug as below.
---+
 Reporter:  NeilJ  |  Owner:  
 Type:  bug| Status:  new 
 Priority:  normal |  Component:  Compiler
  Version:  7.4.1  |   Keywords:  
   Os:  Unknown/Multiple   |   Architecture:  x86 
  Failure:  GHC rejects valid program  |   Testcase:  
Blockedby: |   Blocking:  
  Related: |  
---+
 ghc: panic! (the 'impossible' happened)
   (GHC version 7.4.1 for i386-unknown-linux):
 DsMonad: uninitialised ds_parr_bi

 Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7078
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7069: precision/rounding bug with floating point numbers on 32-bit-platforms

2012-07-16 Thread GHC
#7069: precision/rounding bug with floating point numbers on 32-bit-platforms
--+-
  Reporter:  shahn|  Owner:  simonmar   
   
  Type:  bug  | Status:  closed 
   
  Priority:  normal   |  Milestone:  7.6.1  
   
 Component:  Compiler |Version:  7.4.2  
   
Resolution:  wontfix  |   Keywords:  Float Double 32 
precision rounding
Os:  Unknown/Multiple |   Architecture:  x86
   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
   
  Testcase:   |  Blockedby: 
   
  Blocking:   |Related: 
   
--+-

Comment(by maeder):

 Is it possible to set the FLDCW floating-point load control-word as
 described in http://www.network-
 theory.co.uk/docs/gccintro/gccintro_70.html?

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7069#comment:5
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7069: precision/rounding bug with floating point numbers on 32-bit-platforms

2012-07-16 Thread GHC
#7069: precision/rounding bug with floating point numbers on 32-bit-platforms
--+-
  Reporter:  shahn|  Owner:  simonmar   
   
  Type:  bug  | Status:  closed 
   
  Priority:  normal   |  Milestone:  7.6.1  
   
 Component:  Compiler |Version:  7.4.2  
   
Resolution:  wontfix  |   Keywords:  Float Double 32 
precision rounding
Os:  Unknown/Multiple |   Architecture:  x86
   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
   
  Testcase:   |  Blockedby: 
   
  Blocking:   |Related: 
   
--+-

Comment(by simonmar):

 Replying to [comment:5 maeder]:
  Is it possible to set the FLDCW floating-point load control-word as
 described in http://www.network-
 theory.co.uk/docs/gccintro/gccintro_70.html?

 As it happens I considered that back in 2003(!) and wrote a comment about
 it:
 
[https://github.com/ghc/ghc/blob/f857f0741515b9ebf186beb38fe64448de355817/compiler/nativeGen/X86/Instr.hs#L106
 this comment]

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7069#comment:6
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7069: precision/rounding bug with floating point numbers on 32-bit-platforms

2012-07-16 Thread GHC
#7069: precision/rounding bug with floating point numbers on 32-bit-platforms
--+-
  Reporter:  shahn|  Owner:  simonmar   
   
  Type:  bug  | Status:  closed 
   
  Priority:  normal   |  Milestone:  7.6.1  
   
 Component:  Compiler |Version:  7.4.2  
   
Resolution:  wontfix  |   Keywords:  Float Double 32 
precision rounding
Os:  Unknown/Multiple |   Architecture:  x86
   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
   
  Testcase:   |  Blockedby: 
   
  Blocking:   |Related: 
   
--+-

Comment(by maeder):

 Maybe it is enough that (true) floating point arithmetic yields non-
 deterministic results.
 The problem here regards equality, which need not be the same as a - b ==
 0. So if we implement

 {{{
 a == b = show a == show b
 }}}

 (or more efficiently using rounding)

 then this better reflects the data model, i.e. for set instances (and the
 expected behavior for this ticket).

 Yet, almost all number laws are broken, i.e.

 {{{
 a == b == a - b == 0
 }}}

 But maybe this is more acceptable (with a broken FPU).

 The difference between the equal values 0.65999289 and 0.65999289 (of
 the given example) happens to be 5.551115123125783e-17 (so is clearly
 visible as Double).

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7069#comment:7
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7078: Requested to report bug as below.

2012-07-16 Thread GHC
#7078: Requested to report bug as below.
-+--
Reporter:  NeilJ |   Owner:  chak 
Type:  bug   |  Status:  new  
Priority:  normal|   Milestone:   
   Component:  Compiler  | Version:  7.4.1
Keywords:|  Os:  Unknown/Multiple 
Architecture:  x86   | Failure:  GHC rejects valid program
  Difficulty:  Unknown   |Testcase:   
   Blockedby:|Blocking:   
 Related:|  
-+--
Changes (by simonpj):

  * owner:  = chak
  * difficulty:  = Unknown


-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7078#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7078: Panic using mixing list with parallel arrays incorrectly (was: Requested to report bug as below.)

2012-07-16 Thread GHC
#7078: Panic using mixing list with parallel arrays incorrectly
-+--
Reporter:  NeilJ |   Owner:  chak  
Type:  bug   |  Status:  new   
Priority:  normal|   Milestone:
   Component:  Compiler  | Version:  7.4.1 
Keywords:|  Os:  Unknown/Multiple  
Architecture:  x86   | Failure:  Compile-time crash
  Difficulty:  Unknown   |Testcase:
   Blockedby:|Blocking:
 Related:|  
-+--
Changes (by chak):

  * failure:  GHC rejects valid program = Compile-time crash


Comment:

 GHC shouldn't panic, but instead give a proper error message, but the
 definition of transpose in Handy.hs is incorrect. It uses list pattern
 matching with `(:)` for parallel arrays. That is impossible as they are
 not inductively defined.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7078#comment:2
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7069: precision/rounding bug with floating point numbers on 32-bit-platforms

2012-07-13 Thread GHC
#7069: precision/rounding bug with floating point numbers on 32-bit-platforms
---+
Reporter:  shahn   |   Owner:  simonmar 
  
Type:  bug |  Status:  new  
  
Priority:  normal  |   Milestone:  7.6.1
  
   Component:  Compiler| Version:  7.4.2
  
Keywords:  Float Double 32 precision rounding  |  Os:  
Unknown/Multiple   
Architecture:  x86 | Failure:  Incorrect 
result at runtime
  Difficulty:  Unknown |Testcase:   
  
   Blockedby:  |Blocking:   
  
 Related:  |  
---+
Changes (by simonmar):

  * owner:  = simonmar
  * difficulty:  = Unknown
  * milestone:  = 7.6.1


Comment:

 I will document this bug.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7069#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7069: precision/rounding bug with floating point numbers on 32-bit-platforms

2012-07-13 Thread GHC
#7069: precision/rounding bug with floating point numbers on 32-bit-platforms
---+
Reporter:  shahn   |   Owner:  simonmar 
  
Type:  bug |  Status:  new  
  
Priority:  normal  |   Milestone:  7.6.1
  
   Component:  Compiler| Version:  7.4.2
  
Keywords:  Float Double 32 precision rounding  |  Os:  
Unknown/Multiple   
Architecture:  x86 | Failure:  Incorrect 
result at runtime
  Difficulty:  Unknown |Testcase:   
  
   Blockedby:  |Blocking:   
  
 Related:  |  
---+
Changes (by Khudyakov):

 * cc: alexey.skladnoy@… (added)


Comment:

 I think it's duplicate of #5165

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7069#comment:2
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7069: precision/rounding bug with floating point numbers on 32-bit-platforms

2012-07-13 Thread GHC
#7069: precision/rounding bug with floating point numbers on 32-bit-platforms
---+
Reporter:  shahn   |   Owner:  simonmar 
  
Type:  bug |  Status:  new  
  
Priority:  normal  |   Milestone:  7.6.1
  
   Component:  Compiler| Version:  7.4.2
  
Keywords:  Float Double 32 precision rounding  |  Os:  
Unknown/Multiple   
Architecture:  x86 | Failure:  Incorrect 
result at runtime
  Difficulty:  Unknown |Testcase:   
  
   Blockedby:  |Blocking:   
  
 Related:  |  
---+

Comment(by marlowsd@…):

 commit 43405edbe91d16b289948b9cf442e0bd1b33abdf
 {{{
 Author: Simon Marlow marlo...@gmail.com
 Date:   Fri Jul 13 10:23:12 2012 +0100

 Document bug in the x86 NCG w.r.t. -fexcess-precision (#7069)

  docs/users_guide/bugs.xml  |   30 ++
  docs/users_guide/using.xml |8 
  2 files changed, 38 insertions(+), 0 deletions(-)
 }}}

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

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #7069: precision/rounding bug with floating point numbers on 32-bit-platforms

2012-07-13 Thread GHC
#7069: precision/rounding bug with floating point numbers on 32-bit-platforms
--+-
  Reporter:  shahn|  Owner:  simonmar   
   
  Type:  bug  | Status:  closed 
   
  Priority:  normal   |  Milestone:  7.6.1  
   
 Component:  Compiler |Version:  7.4.2  
   
Resolution:  wontfix  |   Keywords:  Float Double 32 
precision rounding
Os:  Unknown/Multiple |   Architecture:  x86
   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
   
  Testcase:   |  Blockedby: 
   
  Blocking:   |Related: 
   
--+-
Changes (by simonmar):

  * status:  new = closed
  * resolution:  = wontfix


Comment:

 Documented as a known bug, thanks.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7069#comment:4
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #7069: precision/rounding bug with floating point numbers on 32-bit-platforms

2012-07-12 Thread GHC
#7069: precision/rounding bug with floating point numbers on 32-bit-platforms
-+--
 Reporter:  shahn|  Owner:  
  
 Type:  bug  | Status:  new 
  
 Priority:  normal   |  Component:  Compiler
  
  Version:  7.4.2|   Keywords:  Float Double 32 
precision rounding
   Os:  Unknown/Multiple |   Architecture:  x86 
  
  Failure:  Incorrect result at runtime  |   Testcase:  
  
Blockedby:   |   Blocking:  
  
  Related:   |  
-+--
 Comparing floating point numbers (Floats or Doubles, using (==)) that are
 constructed by equal terms sometimes evaluates to False. A term that
 produces normal floating point values (as opposed to NaN or Infinity)
 should always be equal to itself. This bug effectively breaks referential
 transparency.

 This bug occurs with ghc-7.4.2 when compiling with -O2 on 32-bit linux
 ubuntu-11.10. (I guess, it happens on all 32-bit platforms.)

 The attached file demonstrates the bug.

 Simon Marlow expressed his doubts, this bug will be fixed. See also:
 http://www.haskell.org/pipermail/glasgow-haskell-
 users/2012-July/thread.html#22565

 Possible workarounds:
   * compile with -msse2 if available
   * use approximate equivalence

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/7069
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-07-12 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:  7.6.1 
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-

Comment(by simonpj):

 Maybe use `-ddump-rule-firings` to see what rewrites are taking place?  I
 think you are in charge here, erikd, thank you.

 Simon

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:25
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #3940: Propagate bug fix into new code generator

2012-07-09 Thread GHC
#3940: Propagate bug fix into new code generator
-+--
Reporter:  simonpj   |   Owner:  
Type:  bug   |  Status:  new 
Priority:  low   |   Milestone:  7.6.1   
   Component:  Compiler  | Version:  
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  None/Unknown
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  
 Related:|  
-+--
Changes (by simonmar):

  * difficulty:  = Unknown
  * blockedby:  4258 =


Comment:

 The new codegen does not have this bug.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/3940#comment:5
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #3940: Propagate bug fix into new code generator

2012-07-09 Thread GHC
#3940: Propagate bug fix into new code generator
---+
  Reporter:  simonpj   |  Owner:  
  Type:  bug   | Status:  closed  
  Priority:  low   |  Milestone:  7.6.1   
 Component:  Compiler  |Version:  
Resolution:  fixed |   Keywords:  
Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
   Failure:  None/Unknown  | Difficulty:  Unknown 
  Testcase:|  Blockedby:  
  Blocking:|Related:  
---+
Changes (by simonmar):

  * status:  new = closed
  * resolution:  = fixed


-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/3940#comment:6
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-07-08 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:  7.6.1 
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-

Comment(by erikd):

 I've been playing around with the various optimisation flags that GHC
 provides and found that my current test fails with an optimisation of
 `-O1` and passes with optimisation of `-O1 -fno-enable-rewrite-rules`
 suggesting the problem is likely being triggered by PowerPC specific code
 generation triggered by something the rewrite rules are doing.

 I'm now looking at the various dump outputs.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:23
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-07-08 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:  7.6.1 
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-

Comment(by erikd):

 Slightly simplified test case (may not be as complete as the original),
 but which should make debugging easier is:

 {{{
 {-# LANGUAGE MagicHash #-}
 import GHC.Base
 import GHC.Word
 import GHC.IntWord64
 import Numeric (showHex)

 input :: Word64
 input = 1238988323332265734

 result :: Word32
 result = case input of
 W64# x - W32# (word64ToWord# x)

 main :: IO ()
 main = putStrLn $ Result 0x ++ showHex result 
 }}}

 Compiling on PowerPC with `-O1` gives the correct result of `0xcd139706`
 and with `-O1 -fno-enable-rewrite-rule` gives an incorrect result of
 `0x9706`.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:24
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-07-06 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:  7.6.1 
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-

Comment(by erikd):

 Now that I can compile git HEAD on PowerPC again, I can confirm that this
 problem is fixed in HEAD, but not fixed in 7.4.2.

 I'll see if I can figure out what it is that fixed this so we can patch
 7.4.2 in Debian.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:20
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-07-06 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:  7.6.1 
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-

Comment(by erikd):

 Oops, HEAD is also broken, it just gives a different incorrect result:

 {{{
 ./camilla-test-std
 Camellia.fl 1238988323332265734 11185553392205053542 -
 18360184157246690566
 ./camilla-test-opt
 Camellia.fl 1238988323332265734 11185553392205053542 -
 3698434091925017862
 }}}

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:21
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-07-06 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:  7.6.1 
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-

Comment(by erikd):

 Simplified test case for this bug:

 {{{
 import Data.Bits
 import Data.Word

 w64tow32 :: Word64 - (Word32, Word32)
 w64tow32 w =
 (fromIntegral (w `shiftR` 32), fromIntegral (w .. 0x))

 main :: IO ()
 main =
 if w64tow32 1238988323332265734 == (288474448,3440613126)
 then putStrLn Pass
 else putStrLn Fail
 }}}

 Compling without optimisation (or with -O0) passes, with -O1 or above it
 fails.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:22
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-28 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:  7.6.1 
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-

Comment(by pcapriotti):

 @erikd: Sorry, I haven't actually reproduced the problem here (I don't
 have access a ppc machine at the moment). Did I understand correctly that
 the issue in the `Camellia` example in this ticket is fixed by the patch
 in #5900? I'm not sure why splitting it into two modules would make any
 difference there, though.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:18
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-28 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:  7.6.1 
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-

Comment(by erikd):

 @pcapriotti : No this issue is not fixed by the patch in #5900. The Debian
 Haskell Group hit this issue first with an unpatched (wrt #5900) version
 of ghc (7.4.1 I believe). I then tested it with 7.4.2 (which is patched
 wrt #5900) and ghc HEAD at the time. 7.4.2 displayed the problem and ghc
 HEAD did not. I was not able to figure out why 7.4.2 had a problem and
 HEAD did not.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:19
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-22 Thread GHC
#6156: Optimiser bug on linux-powerpc
+---
Reporter:  erikd|Owner: 
Type:  bug  |   Status:  closed 
Priority:  normal   |Component:  Compiler   
 Version:  7.4.1|   Resolution:  fixed  
Keywords:   |   Os:  Linux  
Architecture:  powerpc  |  Failure:  Incorrect result at runtime
Testcase:   |Blockedby: 
Blocking:   |  Related: 
+---

Comment(by nomeata):

 Anything new on this front? This is currently preventing Debian wheezy
 from shipping with yesod.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:10
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-22 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner: 
  Type:  bug  | Status:  new
  Priority:  normal   |  Milestone: 
 Component:  Compiler |Version:  7.4.1  
Resolution:   |   Keywords: 
Os:  Linux|   Architecture:  powerpc
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown
  Testcase:   |  Blockedby: 
  Blocking:   |Related: 
--+-
Changes (by simonpj):

  * status:  closed = new
  * difficulty:  = Unknown
  * resolution:  fixed =


Comment:

 At the GHC end I think we are stalled awaiting a reproducible test case.
 Indeed the ticket is closed Do re-open if anyone can find one.

 Mind you, there is no regression test, which is bad. I'll re-open and
 assign to Paolo to add one.  Is that OK  Paolo?  Need to test both with
 and without optimisation.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:11
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-22 Thread GHC
#6156: Optimiser bug on linux-powerpc
--+-
  Reporter:  erikd|  Owner:  pcapriotti
  Type:  bug  | Status:  new   
  Priority:  normal   |  Milestone:
 Component:  Compiler |Version:  7.4.1 
Resolution:   |   Keywords:
Os:  Linux|   Architecture:  powerpc   
   Failure:  Incorrect result at runtime  | Difficulty:  Unknown   
  Testcase:   |  Blockedby:
  Blocking:   |Related:
--+-
Changes (by simonpj):

  * owner:  = pcapriotti


-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:12
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-17 Thread GHC
#6156: Optimiser bug on linux-powerpc
+---
Reporter:  erikd|Owner: 
Type:  bug  |   Status:  closed 
Priority:  normal   |Component:  Compiler   
 Version:  7.4.1|   Resolution:  fixed  
Keywords:   |   Os:  Linux  
Architecture:  powerpc  |  Failure:  Incorrect result at runtime
Testcase:   |Blockedby: 
Blocking:   |  Related: 
+---

Comment(by nomeata):

 Replying to [comment:7 erikd]:
  Not sure what I did wrong the first time, but the fix for #5900 does
 indeed fix this problem.

 I wish you were right, but cryptocipher just failed to build on powerpc,
 using a patched GHC 7.4.1 that includes your patch
 (http://anonscm.debian.org/darcs/pkg-haskell/ghc/patches/fix-PPC-right-
 shift-bug to be precise), here is the build log:
 https://buildd.debian.org/status/fetch.php?pkg=haskell-
 cryptocipherarch=powerpcver=0.3.5-1stamp=1339953314

 Any idea?

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:8
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-15 Thread GHC
#6156: Optimiser bug on linux-powerpc
+---
Reporter:  erikd|Owner: 
Type:  bug  |   Status:  closed 
Priority:  normal   |Component:  Compiler   
 Version:  7.4.1|   Resolution:  fixed  
Keywords:   |   Os:  Linux  
Architecture:  powerpc  |  Failure:  Incorrect result at runtime
Testcase:   |Blockedby: 
Blocking:   |  Related: 
+---

Comment(by nomeata):

 Hi,

 as Debian cannot upgrade to ghc 7.4.2 at this stage
 (http://lists.debian.org/debian-haskell/2012/06/msg00038.html) we need to
 backport the fix to 7.4.1. If it is not the patch from #5900, what else is
 it?

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:5
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-15 Thread GHC
#6156: Optimiser bug on linux-powerpc
+---
Reporter:  erikd|Owner: 
Type:  bug  |   Status:  closed 
Priority:  normal   |Component:  Compiler   
 Version:  7.4.1|   Resolution:  fixed  
Keywords:   |   Os:  Linux  
Architecture:  powerpc  |  Failure:  Incorrect result at runtime
Testcase:   |Blockedby: 
Blocking:   |  Related: 
+---

Comment(by nomeata):

 Replying to [comment:3 erikd]:
  Hmm, interesting!
 
  The patch from bug #5900 doesn't fix this. Now trying 7.4.2.

 Are you sure it does not fix it? I just read through the diff between
 7.4.1 and 7.4.2, and could not find any other related code.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:6
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-15 Thread GHC
#6156: Optimiser bug on linux-powerpc
+---
Reporter:  erikd|Owner: 
Type:  bug  |   Status:  closed 
Priority:  normal   |Component:  Compiler   
 Version:  7.4.1|   Resolution:  fixed  
Keywords:   |   Os:  Linux  
Architecture:  powerpc  |  Failure:  Incorrect result at runtime
Testcase:   |Blockedby: 
Blocking:   |  Related: 
+---

Comment(by erikd):

 Not sure what I did wrong the first time, but the fix for #5900 does
 indeed fix this problem.

 I'll update the debian packaging metadata for 7.4.1.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:7
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-11 Thread GHC
#6156: Optimiser bug on linux-powerpc
+---
Reporter:  erikd|Owner: 
Type:  bug  |   Status:  closed 
Priority:  normal   |Component:  Compiler   
 Version:  7.4.1|   Resolution:  fixed  
Keywords:   |   Os:  Linux  
Architecture:  powerpc  |  Failure:  Incorrect result at runtime
Testcase:   |Blockedby: 
Blocking:   |  Related: 
+---
Changes (by erikd):

  * status:  new = closed
  * resolution:  = fixed


Comment:

 Confirmed fixed in ghc 7.4.2.

 Closing this bug.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:4
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #5683: bug in signum function

2012-06-11 Thread GHC
#5683: bug in signum function
-+--
Reporter:  tristes_tigres|   Owner:  
Type:  bug   |  Status:  new 
Priority:  normal|   Milestone:  7.6.1   
   Component:  Prelude   | Version:  7.0.3   
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  Other   
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  
 Related:|  
-+--
Changes (by mihai.maruseac):

 * cc: mihai.maruseac@… (added)


-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5683#comment:6
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #5683: bug in signum function

2012-06-11 Thread GHC
#5683: bug in signum function
-+--
Reporter:  tristes_tigres|   Owner:  
Type:  bug   |  Status:  new 
Priority:  normal|   Milestone:  7.6.1   
   Component:  Prelude   | Version:  7.0.3   
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  Other   
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  
 Related:|  
-+--

Comment(by simonmar):

 Isn't this the same as #3070?

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5683#comment:7
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #5683: bug in signum function

2012-06-11 Thread GHC
#5683: bug in signum function
-+--
Reporter:  tristes_tigres|   Owner:  
Type:  bug   |  Status:  new 
Priority:  normal|   Milestone:  7.6.1   
   Component:  Prelude   | Version:  7.0.3   
Keywords:|  Os:  Unknown/Multiple
Architecture:  Unknown/Multiple  | Failure:  Other   
  Difficulty:  Unknown   |Testcase:  
   Blockedby:|Blocking:  
 Related:|  
-+--

Comment(by mihai.maruseac):

 It is.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5683#comment:8
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #5683: bug in signum function

2012-06-11 Thread GHC
#5683: bug in signum function
---+
  Reporter:  tristes_tigres|  Owner:  
  Type:  bug   | Status:  closed  
  Priority:  normal|  Milestone:  7.6.1   
 Component:  Prelude   |Version:  7.0.3   
Resolution:  duplicate |   Keywords:  
Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
   Failure:  Other | Difficulty:  Unknown 
  Testcase:|  Blockedby:  
  Blocking:|Related:  
---+
Changes (by simonmar):

  * status:  new = closed
  * resolution:  = duplicate


-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5683#comment:9
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


[GHC] #6156: Optimiser bug on linux-powerpc

2012-06-10 Thread GHC
#6156: Optimiser bug on linux-powerpc
-+--
 Reporter:  erikd|  Owner:  
 Type:  bug  | Status:  new 
 Priority:  normal   |  Component:  Compiler
  Version:  7.4.1|   Keywords:  
   Os:  Linux|   Architecture:  powerpc 
  Failure:  Incorrect result at runtime  |   Testcase:  
Blockedby:   |   Blocking:  
  Related:   |  
-+--
 Found a small chunk of code in the cryptocipher package that when compiled
 and run, produces a difference result when optimised compared to compiling
 un-optimised.

 Note this is only a problem with PowerPC. On x86-64 there is no difference
 in the output between the optimised version and the un-optimised version.

 I have two simple files (Camellia.hs):

 {{{
 module Camellia where

 import Data.Bits
 import Data.Word

 import Debug.Trace

 fl :: Word64 - Word64 - Word64
 fl fin sk =
 let (x1, x2) = w64tow32 fin in
 let (k1, k2) = w64tow32 sk in
 let y2 = x2 `xor` ((x1 .. k1) `rotateL` 1) in
 let y1 = x1 `xor` (y2 .|. k2) in
 trace (show fin ++   ++ show sk ++  -  ++ show (w32tow64 (y1,
 y2))) $ w32tow64 (y1, y2)

 w64tow32 :: Word64 - (Word32, Word32)
 w64tow32 w = (fromIntegral (w `shiftR` 32), fromIntegral (w ..
 0x))

 w32tow64 :: (Word32, Word32) - Word64
 w32tow64 (x1, x2) = ((fromIntegral x1) `shiftL` 32) .|. (fromIntegral x2)
 }}}

 and a main program (camellia-test.hs):

 {{{

 import Data.Word
 import qualified Camellia as Camellia

 a, b :: Word64
 a = 1238988323332265734
 b = 11185553392205053542

 main :: IO ()
 main =
 putStrLn $ Camellia.fl  ++ show a ++   ++ show b ++  -  ++ show
 (Camellia.fl a b)

 }}}

 I'm also using this Makefile:

 {{{
 TARGETS = camilla-test-std camilla-test-opt

 check : $(TARGETS)
 ./camilla-test-std
 ./camilla-test-opt

 clean :
 make clean-temp-files
 rm -f $(TARGETS)

 clean-temp-files :
 rm -f camilla-test.o camilla-test.hi Camellia.o Camellia.hi

 camilla-test-opt : camilla-test.hs Camellia.hs
 ghc -Wall -O2 --make -i:Tests $ -o $@
 make clean-temp-files

 camilla-test-std : camilla-test.hs Camellia.hs
 ghc -Wall --make -i:Tests $ -o $@
 make clean-temp-files
 }}}

 When I run the two programs I get:

 {{{
 ./camilla-test-std
 1238988323332265734 11185553392205053542 - 18360184157246690566
 Camellia.fl 1238988323332265734 11185553392205053542 -
 18360184157246690566
 ./camilla-test-opt
 1238988323332265734 11185553392205053542 - 3698434091925017862
 Camellia.fl 38662 15974 - 3698434091925017862
 }}}

 So there are two problems here:

 a) Showing Word64 values is not working correctly in the optimised
 version.

 b) The function Camelia.fl produces the wrong result in the optimised
 version.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-10 Thread GHC
#6156: Optimiser bug on linux-powerpc
-+--
 Reporter:  erikd|  Owner:  
 Type:  bug  | Status:  new 
 Priority:  normal   |  Component:  Compiler
  Version:  7.4.1|   Keywords:  
   Os:  Linux|   Architecture:  powerpc 
  Failure:  Incorrect result at runtime  |   Testcase:  
Blockedby:   |   Blocking:  
  Related:   |  
-+--

Comment(by erikd):

 Just tested this with GHC compiled from git HEAD and the optimised and un-
 optimised versions give the same results.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:1
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-10 Thread GHC
#6156: Optimiser bug on linux-powerpc
-+--
 Reporter:  erikd|  Owner:  
 Type:  bug  | Status:  new 
 Priority:  normal   |  Component:  Compiler
  Version:  7.4.1|   Keywords:  
   Os:  Linux|   Architecture:  powerpc 
  Failure:  Incorrect result at runtime  |   Testcase:  
Blockedby:   |   Blocking:  
  Related:   |  
-+--

Comment(by erikd):

 This was likely fixed in bug #5900 which resulted in this patch:

 
http://hackage.haskell.org/trac/ghc/changeset/bee6f865d8c747aa821f9d4996ad3300429fd55c

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/6156#comment:2
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #6156: Optimiser bug on linux-powerpc

2012-06-10 Thread GHC
#6156: Optimiser bug on linux-powerpc
-+--
 Reporter:  erikd|  Owner:  
 Type:  bug  | Status:  new 
 Priority:  normal   |  Component:  Compiler
  Version:  7.4.1|   Keywords:  
   Os:  Linux|   Architecture:  powerpc 
  Failure:  Incorrect result at runtime  |   Testcase:  
Blockedby:   |   Blocking:  
  Related:   |  
-+--

Comment(by erikd):

 Hmm, interesting!

 The patch from bug #5900 doesn't fix this. Now trying 7.4.2.

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

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


Re: [GHC] #5704: Bug in the handling of wired-in packages (like template-haskell)

2012-06-08 Thread GHC
#5704: Bug in the handling of wired-in packages (like template-haskell)
---+
  Reporter:  simonmar  |  Owner:  simonmar
  Type:  bug   | Status:  closed  
  Priority:  high  |  Milestone:  7.4.2   
 Component:  Package system|Version:  7.2.1   
Resolution:  wontfix   |   Keywords:  
Os:  Unknown/Multiple  |   Architecture:  Unknown/Multiple
   Failure:  None/Unknown  | Difficulty:  Unknown 
  Testcase:|  Blockedby:  
  Blocking:|Related:  
---+
Changes (by simonmar):

  * status:  new = closed
  * resolution:  = wontfix


Comment:

 I'm going to close this.  It just doesn't work to have multiple versions
 of a wired-in package, all kinds of things could go wrong.

 We currently allow multiple versions to exist, but only the latest is
 considered to be the wired-in one.  This was to make it possible to have
 both `base-3` and `base-4` coexisting, where `base-3` depended on
 `base-4`.  This doesn't apply in the above template-haskell example, where
 the two packages are really independent.

 I think the right fix is just to not do this, and if I understand
 correctly the latest version of Cabal is better at avoiding it anyway.

-- 
Ticket URL: http://hackage.haskell.org/trac/ghc/ticket/5704#comment:6
GHC http://www.haskell.org/ghc/
The Glasgow Haskell Compiler

___
Glasgow-haskell-bugs mailing list
Glasgow-haskell-bugs@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs


  1   2   3   4   5   6   7   8   9   10   >