1. 02 Mar, 1999 20 commits
    • sof's avatar
      [project @ 1999-03-02 19:15:27 by sof] · a496d068
      sof authored
      Partial support for working with DLLs. On mingw32, unless you supply
      the -static command line option, the default is now to assume
      that you're using DLLs when compiling and linking.
      ToDo: support the construction of DLLs via the driver.
    • sof's avatar
      [project @ 1999-03-02 19:10:07 by sof] · fc1b2092
      sof authored
      On mingw32, which is the only 'platform' where we support producing
      DLLs, prefix each static closure with a zero word. This is needed so
      that we can distinguish between pointers to (reversed!) info tables
      and static closures just by checking whether there's a zero word just
      above the pointed-to entity. Wish there was a better way..
    • sof's avatar
      [project @ 1999-03-02 19:01:56 by sof] · 5cea3b9d
      sof authored
      Remove out-of-date use of -fcompiling-prelude
    • sof's avatar
      [project @ 1999-03-02 18:54:47 by sof] · 2e97c37b
      sof authored
      Compile CgCase with -fno-prune-tydecls on
    • sof's avatar
      [project @ 1999-03-02 18:31:51 by sof] · a20c26e8
      sof authored
      import list adjustments
    • 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.
    • 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.)
    • 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
           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'.
    • 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.
    • simonm's avatar
      [project @ 1999-03-02 16:09:28 by simonm] · 7f083558
      simonm authored
      Add missing default case to mkRegLiveness.
    • 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.
    • 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.
    • 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.
    • 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
        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.
    • sof's avatar
      [project @ 1999-03-02 14:22:43 by sof] · 0554dc08
      sof authored
      mostly import list re-shuffling
    • sof's avatar
      [project @ 1999-03-02 14:20:44 by sof] · fdae8ab9
      sof authored
      Separated out Module type and ops from OccName.
    • simonm's avatar
      [project @ 1999-03-02 11:46:28 by simonm] · b1111363
      simonm authored
      Install the docs in $real_datadir, not $datadir.
    • sof's avatar
      [project @ 1999-03-02 11:11:18 by sof] · 82f0cf81
      sof authored
        - only trailing empty decls were accepted.
        - empty export lists where being flagged as there being none.
    • sof's avatar
      [project @ 1999-03-02 10:40:40 by sof] · bbe10fbc
      sof authored
      Updates + added empty decl regression test
    • simonm's avatar
      [project @ 1999-03-02 09:17:02 by simonm] · 128df24d
      simonm authored
      makeForeignObj --> mkForeignObj
  2. 01 Mar, 1999 20 commits