ghci: Load static objects in batches

Authored by bgamari on Jun 14 2019, 3:53 PM.

Description

ghci: Load static objects in batches

Previously in the case where GHC was dynamically linked we would load
static objects one-by-one by linking each into its own shared object and
dlopen'ing each in order. However, this meant that the link would fail
in the event that the objects had cyclic symbol dependencies.

Here we fix this by merging each "run" of static objects into a single
shared object and loading this.

Fixes Trac #13786 for the case where GHC is dynamically linked.

(cherry picked from commit cd177b44695382878eca7800fb2493b72b20c1e7)

Details

Committed
bgamariTue, Jun 25, 5:33 PM
Parents
rGHCbbf5dfa68eda: testsuite: Test for #13786
Branches
Unknown
Tags
Unknown