diff options
author | Ben Gamari <ben@smart-cactus.org> | 2020-09-11 06:16:18 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2020-09-16 15:30:20 -0400 |
commit | 9c748240149aa27af74ca721b2c1d144ed82a1a1 (patch) | |
tree | dd1c3224df62b9946c3b21afb8e226111912aed8 /includes | |
parent | 9436cac081931b83c54a906e7f2c5fe32e868c81 (diff) | |
download | haskell-wip/initializers.tar.gz |
rts: Refactor unloading of foreign export StablePtrswip/initializers
Previously we would allocate a linked list cell for each foreign export.
Now we can avoid this by taking advantage of the fact that they are
already broken into groups.
Diffstat (limited to 'includes')
-rw-r--r-- | includes/rts/ForeignExports.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/includes/rts/ForeignExports.h b/includes/rts/ForeignExports.h index f8828e59d4..aeb524aebf 100644 --- a/includes/rts/ForeignExports.h +++ b/includes/rts/ForeignExports.h @@ -29,6 +29,8 @@ struct ForeignExportsList { /* if the RTS linker loaded the module, * this points to an array of length ->n_entries * recording the StablePtr for each export. */ + StgStablePtr **stable_ptrs; + /* the exported closures. of length ->exports. */ StgPtr exports[]; }; |