[commit: ghc] master: Add purgeObj() to remove the symbol table entries for an object (9e6e479)

git at git.haskell.org git at git.haskell.org
Fri Nov 28 14:09:53 UTC 2014


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/9e6e4796437a7fc23e83605a45db9b2663570123/ghc

>---------------------------------------------------------------

commit 9e6e4796437a7fc23e83605a45db9b2663570123
Author: Simon Marlow <marlowsd at gmail.com>
Date:   Mon Sep 29 12:49:21 2014 +0100

    Add purgeObj() to remove the symbol table entries for an object
    
    This allows us to replace an object without actually unloading the old
    object, which is necessary when we know we have references to the old
    object so it can't be completely unloaded.  Using unloadObj() would
    cause the GC (CheckUnload) to repeatedly and fruitlessly try to unload
    the old object.


>---------------------------------------------------------------

9e6e4796437a7fc23e83605a45db9b2663570123
 includes/rts/Linker.h                    |  3 ++
 rts/Linker.c                             | 74 ++++++++++++++++++++++----------
 testsuite/tests/rts/linker_unload.c      | 37 ++++++++++++++++
 testsuite/tests/rts/linker_unload.stdout |  2 +-
 4 files changed, 92 insertions(+), 24 deletions(-)

Diff suppressed because of size. To see it, use:

    git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 9e6e4796437a7fc23e83605a45db9b2663570123


More information about the ghc-commits mailing list