[project @ 2001-01-31 12:27:24 by sewardj]
authorsewardj <unknown>
Wed, 31 Jan 2001 12:27:25 +0000 (12:27 +0000)
committersewardj <unknown>
Wed, 31 Jan 2001 12:27:25 +0000 (12:27 +0000)
commit6142c28fbfb64b800f6a3530b623597eee9bd9be
treed79dbfb891784e9997b31006083478a3c342bee1
parente95a551db710952fd25736055ea889eb8d65141a
[project @ 2001-01-31 12:27:24 by sewardj]
Create PrimReps: {Int|Word}{8|16|32}Rep, for use in the native code
generator.  And change the rep for character ops from Int8Rep to
Word8Rep.  This fixes a bug in the sparc NCG in which chars loaded from
memory were incorrectly sign-extended to 32 bits.  This problem
appeared when CharRep was turned into a 32-bit quantity, and
previous uses of it were replaced with Int8Rep, incorrectly, since
Int8Rep is signed.  Also undo the kludge in the x86 section which
had (unknown to all) kept it working despite the change to Int8Rep.

sparc NCG now appears to work; hope the x86 side isn't now broken.
ghc/compiler/nativeGen/MachCode.lhs
ghc/compiler/nativeGen/MachMisc.lhs
ghc/compiler/nativeGen/PprMach.lhs
ghc/compiler/nativeGen/StixPrim.lhs
ghc/compiler/prelude/PrimRep.lhs