Changes between Initial Version and Version 2 of Ticket #1989


Ignore:
Timestamp:
Jan 1, 2008 2:12:40 PM (8 years ago)
Author:
igloo
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #1989

    • Property Operating System changed from Unknown to FreeBSD
    • Property Architecture changed from Unknown to x86_64 (amd64)
    • Property Summary changed from GHC-6.8.1 fails to reproduce itself on amd64/FreeBSD-7.0 to GHC-6.8.1 fails arith003 on amd64/FreeBSD-7.0
  • Ticket #1989 – Description

    initial v2  
    11I am trying to build a native amd64 compiler on FreeBSD. At the bootstrap stage I use the -i386
    22compiler as ghc: This works to stage1. The stage1 compiler is usable in a limited way. But the stage2 compiler built with this fails very early (before even complaining about missing -B options, if started naked).
    3 
     3{{{
    44Ex.:
    55/home/wb.local/ghc-6.8.2 0$ compiler/stage2/ghc-6.8.2
     
    88/home/wb.local/ghc-6.8.2 0$ compiler/stage1/ghc-6.8.2
    99ghc-6.8.2: missing -B<dir> option
    10 
     10}}}
    1111
    1212The most reproducable misbehaviour of the stage1 compiler is the unability to run test arith003. The value minInt is converted to a nonprintable 1-char string in the int_ops part. Most other results, including the multiple precision tests, look better than the output from x86-64-openbsd (as published with the 6.6.1-testsuite). It looks as if there is a specific problem with bit pattern 0x8000000000000000L. If I change the source code to avoid this pattern (minInt -> minInt+1) the error does not occur.
    1313
    1414First lines of arith003 output:
    15 
     15{{{
    1616(+) 0 0 = 0
    1717(+) 0 1 = 1
     
    6464(+) 9223372036854775807 9223372036854775807 = -2
    6565...
     66}}}