1. 08 Mar, 1999 2 commits
  2. 05 Mar, 1999 1 commit
    • sof's avatar
      [project @ 1999-03-05 10:21:22 by sof] · 9b910bc8
      sof authored
      Support for unsafely thawing your (Byte)Arrays, i.e., added the
      following ops:
      
       MutableArray.unsafeThawArray :: Ix ix => Array ix elt -> ST s (MutableArray s ix elt)
       MutableArray.unsafeThawByteArray :: Ix ix => ByteArray ix -> ST s (MutableByteArray s ix)
       MutableArray.thawByteArray :: Ix ix => ByteArray ix -> ST s (MutableByteArray s ix)
      
       ST.unsafeThawSTArray 	    :: Ix ix => Array ix elt -> ST s (STArray s ix elt)
       LazyST.unsafeThawSTArray   :: Ix ix => Array ix elt -> ST s (STArray s ix elt)
      
       IOExts.unsafeFreezeIOArray :: Ix ix => IOArray ix elt -> IO (Array ix elt)
       IOExts.unsafeThawIOArray   :: Ix ix => Array ix elt -> IO (IOArray ix elt)
      
      + removed the re-exportation of Monad that ST and LazyST did.
      9b910bc8
  3. 04 Mar, 1999 2 commits
  4. 03 Mar, 1999 1 commit
  5. 02 Mar, 1999 15 commits
    • sof's avatar
      [project @ 1999-03-02 19:01:56 by sof] · 5cea3b9d
      sof authored
      Remove out-of-date use of -fcompiling-prelude
      5cea3b9d
    • sof's avatar
      [project @ 1999-03-02 18:54:47 by sof] · 2e97c37b
      sof authored
      Compile CgCase with -fno-prune-tydecls on
      2e97c37b
    • sof's avatar
      [project @ 1999-03-02 18:31:51 by sof] · a20c26e8
      sof authored
      import list adjustments
      a20c26e8
    • sof's avatar
      [project @ 1999-03-02 17:46:51 by sof] · b1b1d6cc
      sof authored
      One new option:
      
       -static    produce code for use in statically linked binaries.
                  The driver makes sure that this option is on for
      	    platforms that doesn't support DLLs. Leaving it
      	    off won't have any bad effects though.
      b1b1d6cc
    • sof's avatar
      [project @ 1999-03-02 17:18:27 by sof] · 9b3e63f4
      sof authored
      ppr bugfix for dcons that are locally qualified
      (omit braces around context if there isn't one.)
      9b3e63f4
    • sof's avatar
      [project @ 1999-03-02 17:12:54 by sof] · 94ff1ec1
      sof authored
      Directories can now be flagged as containing interface files that have
      their corresponding object codes living in Win32 DLLs.
      
      The compiler needs to keep track of whether a name refers to something
      in a DLL or not, since Win32 DLLs forces you to distinguish between
      the two at the point of use. For example, the code generated for
      the following snippet
      
           return (x+2);
      
      will differ. If 'x' resides in a DLL, you need to perform an extra
      indirection to get at its value. Effectively, the generated code
      becomes
      
           return (*x+2);
      
      For functions, the distinction can be made transparent, but we
      can avoid jumping through an extra level of indirection if we
      do indicate that a label will be imported from a DLL.
      
      Back to the renamer and its scheme, directories that contain
      the file ".dLL_ifs.hi" (name chosen to lessen the risk of a clash..)
      are considered as containing 'DLL interface files'. There's two
      caveats to this scheme:
      
       - interface files found in "." are not considered to be referring
         to something in a DLL.
       - if the compiler has got -static on the command line, then all
         interface file in scope are considered to be 'normal'.
      94ff1ec1
    • sof's avatar
      [project @ 1999-03-02 16:44:26 by sof] · be2b723f
      sof authored
      Win32 only: emit code that declares the DLLness of a label we're
      making use of.
      be2b723f
    • simonm's avatar
      [project @ 1999-03-02 16:09:28 by simonm] · 7f083558
      simonm authored
      Add missing default case to mkRegLiveness.
      7f083558
    • sof's avatar
      [project @ 1999-03-02 15:45:50 by sof] · 44ff0cd1
      sof authored
      Support for deriving 'proper' Show & Read instances for infix constructors.
      44ff0cd1
    • sof's avatar
      [project @ 1999-03-02 15:43:27 by sof] · 33849038
      sof authored
      PrelMods - use mkPrelModule instead of mkSrcModule to reflect distinction
      we need to make between the two when compiling up code that's destined
      for 'Win32 DLL'dom.
      33849038
    • sof's avatar
      [project @ 1999-03-02 15:40:08 by sof] · 1739ba3c
      sof authored
      Fix to allow local, non-exported actions to be 'foreign export'ed.
      1739ba3c
    • sof's avatar
      [project @ 1999-03-02 14:34:33 by sof] · dc7d7a2f
      sof authored
      - import list tweaks
      - moved the code that decides that a StgCon really shouldn't
        be mapped to a static constructor but an updateable thunk
        if it contains lit-lits from the codegen into the CoreToStg
        translation.
      
        Added an extra case to this code to deal with StgCon's that contain
        references to values that reside in a DLL, where we also have to
        opt for an updateable thunk instead of a static constructor. Only
        applies when compiling on/for Win32 platforms.
      dc7d7a2f
    • sof's avatar
      [project @ 1999-03-02 14:22:43 by sof] · 0554dc08
      sof authored
      mostly import list re-shuffling
      0554dc08
    • sof's avatar
      [project @ 1999-03-02 14:20:44 by sof] · fdae8ab9
      sof authored
      Separated out Module type and ops from OccName.
      fdae8ab9
    • sof's avatar
      [project @ 1999-03-02 11:11:18 by sof] · 82f0cf81
      sof authored
      Tweaks:
        - only trailing empty decls were accepted.
        - empty export lists where being flagged as there being none.
      82f0cf81
  6. 01 Mar, 1999 4 commits
  7. 18 Feb, 1999 3 commits
    • simonm's avatar
      [project @ 1999-02-18 17:55:40 by simonm] · d3a443b3
      simonm authored
      Eliminate an unnecessary pattern match on J#.
      d3a443b3
    • simonpj's avatar
      [project @ 1999-02-18 17:13:54 by simonpj] · 89300e49
      simonpj authored
      Allow completely unbound tyvars of non-type kind
      89300e49
    • simonm's avatar
      [project @ 1999-02-18 12:26:11 by simonm] · e58d0e9b
      simonm authored
      Add two new operations to StgPrimFloat.c:
      
      	__int_encodeFloat
      	__int_encodeDouble
      
      for encoding floats/doubles from small integers.  This avoids having
      to convert small integers to large ones before an encodeFloat
      operation, and fixes the two cases of slowdown in nofib after the
      small integer changes.
      
      Also:
      	- remove encodeFloat and decodeFloat as primops
      	- use foreign import for encode{Float,Double} and
      	  the various isNaN etc. ccalls in PrelNumExtra.
      e58d0e9b
  8. 17 Feb, 1999 2 commits
    • simonpj's avatar
      [project @ 1999-02-17 21:53:27 by simonpj] · f629db72
      simonpj authored
      Add z-encodings for ^ and %
      f629db72
    • simonm's avatar
      [project @ 1999-02-17 15:57:20 by simonm] · 449deb80
      simonm authored
      Fast Integers.  The rep. of Integers is now
      
      	data Integer = S# Int#
      		     | J# Int# ByteArray#
      
      - several new primops added for overflow-detecting arithmetic
      - negateInteger# removed; it can be done directly
      - integer_0, integer_1 etc. removed.
      - the compiler now uses S# where it previously used int2Integer.
      - the compiler generates small integers for -2^32 .. 2^32-1, instead
        of -2^29 .. -2^29-1.
      
      - PrelST.State datatype moved to LazyST (its only use).
      - some library code (in Time.lhs) still needs cleaning up, it depends
        on the Integer rep.
      449deb80
  9. 15 Feb, 1999 3 commits
  10. 11 Feb, 1999 2 commits
  11. 10 Feb, 1999 2 commits
  12. 09 Feb, 1999 1 commit
  13. 06 Feb, 1999 2 commits