Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tag: 2008-06-01
Commits on May 30, 2008
  1. @simonmar

    Fix a bug to do with recursive modules in one-shot mode

    simonmar authored
    The problem was that when loading interface files in checkOldIface, we
    were not passing the If monad the mutable variable for use when
    looking up entities in the *current* module, with the result that the
    knots wouldn't be tied properly, and some instances of TyCons would
    be incorrectly abstract.
    
    This bug has subtle effects: for example, recompiling a module without
    making any changes might lead to a slightly different result (noticed
    due to the new interface-file fingerprints).  The bug doesn't lead to
    any direct failures that we're aware of.
  2. @simonmar
  3. @rleshchinskiy
Commits on May 29, 2008
  1. Replacing copyins and copyouts with data-movement instructions

    dias@eecs.harvard.edu authored
    o Moved BlockId stuff to a new file to avoid module recursion
    o Defined stack areas for parameter-passing locations and spill slots
    o Part way through replacing copy in and copy out nodes
      - added movement instructions for stack pointer
      - added movement instructions for call and return parameters
        (but not with the proper calling conventions)
    o Inserting spills and reloads for proc points is now procpoint-aware
      (it was relying on the presence of a CopyIn node as a proxy for
       procpoint knowledge)
    o Changed ZipDataflow to expect AGraphs (instead of being polymorphic in
       the type of graph)
  2. @mchakravarty
  3. @simonmar
  4. @simonmar

    Make it less fatal to not call ioManagerStart()

    simonmar authored
    For clients that forget to do hs_add_root()
  5. @simonmar

    FIX BUILD with GHC 6.4.x

    simonmar authored
  6. Cmm back end upgrades

    dias@eecs.harvard.edu authored
    Several changes in this patch, partially bug fixes, partially new code:
    o bug fixes in ZipDataflow
       - added some checks to verify that facts converge
       - removed some erroneous checks of convergence on entry nodes
       - added some missing applications of transfer functions
    o changed dataflow clients to use ZipDataflow, making ZipDataflow0 obsolete
    o eliminated DFA monad (no need for separate analysis and rewriting monads with ZipDataflow)
    o started stack layout changes
       - no longer generating CopyIn and CopyOut nodes (not yet fully expunged though)
       - still not using proper calling conventions
    o simple new optimizations:
       - common block elimination
          -- have not yet tried to move the Adams opt out of CmmProcPointZ
       - block concatenation
    o piped optimization fuel up to the HscEnv
       - can be limited by a command-line flag
       - not tested, and probably not yet properly used by clients
    o added unique supply to FuelMonad, also lifted unique supply to DFMonad
Commits on May 28, 2008
  1. @simonmar
  2. @simonmar

    Use MD5 checksums for recompilation checking (fixes #1372, #1959)

    simonmar authored
    This is a much more robust way to do recompilation checking.  The idea
    is to create a fingerprint of the ABI of an interface, and track
    dependencies by recording the fingerprints of ABIs that a module
    depends on.  If any of those ABIs have changed, then we need to
    recompile.
    
    In bug #1372 we weren't recording dependencies on package modules,
    this patch fixes that by recording fingerprints of package modules
    that we depend on.  Within a package there is still fine-grained
    recompilation avoidance as before.
    
    We currently use MD5 for fingerprints, being a good compromise between
    efficiency and security.  We're not worried about attackers, but we
    are worried about accidental collisions.
    
    All the MD5 sums do make interface files a bit bigger, but compile
    times on the whole are about the same as before.  Recompilation
    avoidance should be a bit more accurate than in 6.8.2 due to fixing
    #1959, especially when using -O.
  3. when linking, ignore unknown .reloc section that appeared in gcc 3.4.…

    dias@eecs.harvard.edu authored
    …5(?)
Commits on May 27, 2008
  1. @mchakravarty
  2. @simonmar
Commits on May 26, 2008
  1. @igfoo

    Simplify specifying that some libraries need to use the build.* rules

    igfoo authored
    Now you just add them to SUBDIRS_BUILD instead of SUBDIRS.
  2. @igfoo

    Cope with libraries in libraries/foo/bar rather than just libraries/foo

    igfoo authored
    You need to use the build.* rules rather than the make.* rules, though.
  3. @mchakravarty

    Fix fwrite$UNIX2003 symbols when cross-compiling for Tiger

    mchakravarty authored
    - When compiling with -mmacos-deployment-target=10.4, we need 
      --no-builtin-fprintf, as the use of GCC's builtin function 
      optimisation for fprintf together with #include "PosixSource" in the 
      RTS leads to the use of fwrite$UNIX2003 (with GCC 4.0.1 on Mac OS X 
      10.5.2).
Commits on May 23, 2008
  1. @simonmar
  2. @igfoo

    Do some stack fiddling in stg_unblockAsyncExceptionszh_ret

    igfoo authored
    This fixes a segfault in #1657
Commits on May 22, 2008
  1. @mchakravarty
Commits on May 21, 2008
  1. @igfoo

    Fix warnings in TcTyDecls

    igfoo authored
  2. @igfoo

    Fix whitespace in TcTyDecls

    igfoo authored
  3. Fix Trac #1061: refactor handling of default methods

    simonpj@microsoft.com authored
    In an instance declaration, omitted methods get a definition that
    uses the default method.  We used to generate source code and feed it
    to the type checker.  But tc199 shows that is a bad idea -- see
    Note [Default methods in instances] in TcClassDcl.
    
    So this patch refactors to insteadl all us to generate the 
    *post* typechecked code directly for default methods.
  4. Comment typo

    simonpj@microsoft.com authored
Commits on May 20, 2008
  1. Fix Trac #2292: improve error message for lone signatures

    simonpj@microsoft.com authored
    Refactoring reduces code and improves error messages
  2. Fix Trac #2293: improve error reporting for duplicate declarations

    simonpj@microsoft.com authored
  3. @igfoo

    Make TcType warning-free

    igfoo authored
  4. @simonmar
Commits on May 19, 2008
  1. @igfoo

    Make TcUnify warning-free

    igfoo authored
  2. @igfoo

    Fix a comment typo

    igfoo authored
  3. @igfoo

    Detab TcUnify

    igfoo authored
  4. FIX #1955: confusion between .exe.hp and .hp suffixes for heap profiles

    Simon Marlow authored
    Now we use <prog>.hp and <prog>.prof consistently.
Commits on May 17, 2008
  1. @igfoo
Commits on May 15, 2008
  1. Tuples cannot contain unboxed types

    simonpj@microsoft.com authored
    This bug allowed, for example
    
      f = let x = ( 1#, 'x' ) in x
    
    which is ill-typed because you can't put an unboxed value in a tuple.
    Core Lint fails on this program.
    
    The patch makes the program be rejcted up-front.
Commits on May 1, 2008
Something went wrong with that request. Please try again.