[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