Skip to content
Commits on Apr 7, 2006
  1. Fix a bug related to threads blocked on blackholes

    Simon Marlow committed
    We weren't making them live early enough, with the result that
    finalizable objects referred to only by a thread blocked on a black
    hole could be finalized too early (see conc057 test).
  2. Reorganisation of the source tree

    Simon Marlow committed
    Most of the other users of the fptools build system have migrated to
    Cabal, and with the move to darcs we can now flatten the source tree
    without losing history, so here goes.
    The main change is that the ghc/ subdir is gone, and most of what it
    contained is now at the top level.  The build system now makes no
    pretense at being multi-project, it is just the GHC build system.
    No doubt this will break many things, and there will be a period of
    instability while we fix the dependencies.  A straightforward build
    should work, but I haven't yet fixed binary/source distributions.
    Changes to the Building Guide will follow, too.
Commits on Apr 6, 2006
  1. @Lemmih
  2. @Lemmih
  3. @Lemmih

    GHC.Base.breakpoint isn't vaporware anymore.

    Lemmih committed
    -fignore-breakpoints can be used to ignore breakpoints.
  4. Add SA_RESTART flag to the timer signal handler.

    Simon Marlow committed
    This seems to be necessary to prevent readline being confused by our
    SIGALRM handler.
  5. @Lemmih
Commits on Apr 5, 2006
  1. add freeStorage() prototype

    Simon Marlow committed
Commits on Mar 30, 2006
  1. @dcoutts
  2. oops, undo accidental patch

    Simon Marlow committed
  3. fix profiling on Win32

    Simon Marlow committed
    The recent patch to free memory in hs_exit() on Win32 unfortunately broke
    profiling, because it freed the memory slightly too early.
Commits on Mar 29, 2006
  1. fix for GHC >= 6.5 again

    Simon Marlow committed
  2. in stage1, we should get isPrint and isUpper from Compat.Unicode, not…

    Simon Marlow committed
    … Data.Char
  3. Darwin/x86: correct stack alignment in ByteCodeFFI committed
Commits on Mar 28, 2006
  1. add forkOnzh_fast symbol

    Simon Marlow committed
Commits on Mar 27, 2006
  1. Add a new primitive forkOn#, for forking a thread on a specific Capab…

    Simon Marlow committed
    This gives some control over affinity, while we figure out the best
    way to automatically schedule threads to make best use of the
    available parallelism.
    In addition to the primitive, there is also:
      GHC.Conc.forkOnIO :: Int -> IO () -> IO ThreadId
    where 'forkOnIO i m' creates a thread on Capability (i `rem` N), where
    N is the number of available Capabilities set by +RTS -N.
    Threads forked by forkOnIO do not automatically migrate when there are
    free Capabilities, like normal threads do.  Still, if you're using
    forkOnIO exclusively, it's a good idea to do +RTS -qm to disable work
    pushing anyway (work pushing takes too much time when the run queues
    are large, this is something we need to fix).
  2. eliminate a warning

    Simon Marlow committed
  3. elimiante a couple of warnings

    Simon Marlow committed
  4. small updates

    Simon Marlow committed
  5. @Lemmih

    Allow users of the GHC library to specify which packages have already…

    Lemmih committed
    … been loaded.
    This is pretty important when using the linker/bytecode-compiler from binaries
    other than GHCi.
Commits on Mar 25, 2006
  1. Fix Darwin/x86 stack alignment committed
    ... again.
    For now, I've added a TODO comment, but sooner or later this will have to
    be made gcc-version-independent.
Commits on Mar 24, 2006
  1. fix a warning

    Simon Marlow committed
  2. Add some more flexibility to the multiproc scheduler

    Simon Marlow committed
    There are two new options in the -threaded RTS:
      -qm       Don't automatically migrate threads between CPUs
      -qw       Migrate a thread to the current CPU when it is woken up
    previously both of these were effectively off, i.e. threads were
    migrated between CPUs willy-milly, and threads were always migrated to
    the current CPU when woken up.  This is the first step in tweaking the
    scheduling for more effective work balancing, there will no doubt be
    more to come.
  3. @dcoutts

    mkDerivedConstants.c depends on ghcplatform.h

    dcoutts committed
    I think this missing dep is what broke my parallel build
    I used make -j2 with ghc- and got:
    ==fptools== make boot -wr --jobserver-fds=3,11 -j;
    in /var/tmp/portage/ghc-6.4.2_pre20060323/work/ghc-
    Creating ghcplatform.h...
    gcc -O -O2 -march=k8 -pipe -Wa,--noexecstack    -c mkDerivedConstants.c -o mkDerivedConstants.o
    In file included from ghcconfig.h:5,
                     from Stg.h:42,
                     from Rts.h:19,
                     from mkDerivedConstants.c:20:
    ghcplatform.h:1:1: unterminated #ifndef
    With this patch applied I can no longer repoduce this build bug.
    So I think this patch should be applied to the cvs ghc-6-4-branch too.
  4. Darwin Mangler: include alignment statements for symbol stubs committed
  5. omit the __DISCARD__() call if unregisterised

    Simon Marlow committed
Commits on Mar 23, 2006
  1. Deal with non-executable memory on Darwin (only an issue on Darwin/x8… committed
    …6 so far)
  2. Accept amd64-*-freebsd architecture

    Volker Stolz committed
  3. gcc is getting smarter, so we need to hit it with a bigger stick

    Simon Marlow committed
    On x86_64 we are using C argument registers for global registers in
    the STG machine.  This is always going to be problematic when it comes
    to making C calls from STG and compiling via C.  Prior to GCC 4.1.0
    (approx) it was possible to just assign the argument expressions to
    temporaries to avoid a clash.  Now, we need to add an extra dummy
    function call as a barrier between the temporary assignments and the
    actual call.  The dummy call is removed by the mangler.
Commits on Mar 8, 2006
  1. Ranlib is required on Darwin/x86, too committed
Commits on Jan 21, 2006
  1. remove empty dir

    Simon Marlow committed
  2. rempve some unused files

    Simon Marlow committed
Something went wrong with that request. Please try again.