diff options
author | Rickard Green <[email protected]> | 2016-09-02 15:09:08 +0200 |
---|---|---|
committer | Rickard Green <[email protected]> | 2016-09-02 15:09:08 +0200 |
commit | 197ed04e8e2230fb011dc95e25089cad5141d460 (patch) | |
tree | bcb22dc3c3281b86c905f62e424124bf110b2fb1 /erts/emulator/beam/beam_bif_load.c | |
parent | 076098cebd1885ec5a56575d910322a6f1de67ff (diff) | |
parent | 18c52187b1714284416a8a1d618ce4db831d1a45 (diff) | |
download | otp-197ed04e8e2230fb011dc95e25089cad5141d460.tar.gz otp-197ed04e8e2230fb011dc95e25089cad5141d460.tar.bz2 otp-197ed04e8e2230fb011dc95e25089cad5141d460.zip |
Merge branch 'rickard/new-purge-strategy/OTP-13777' into maint
* rickard/new-purge-strategy/OTP-13777:
Introduce literal sweep of native stack in new purge strategy
Diffstat (limited to 'erts/emulator/beam/beam_bif_load.c')
-rw-r--r-- | erts/emulator/beam/beam_bif_load.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/erts/emulator/beam/beam_bif_load.c b/erts/emulator/beam/beam_bif_load.c index ba79068859..dddcfbb77d 100644 --- a/erts/emulator/beam/beam_bif_load.c +++ b/erts/emulator/beam/beam_bif_load.c @@ -976,8 +976,13 @@ erts_proc_copy_literal_area(Process *c_p, int *redsp, int fcalls, int gc_allowed } if (any_heap_ref_ptrs(c_p->stop, c_p->hend, literals, lit_bsize)) + goto literal_gc; + *redsp += 1; +#ifdef HIPE + if (nstack_any_heap_ref_ptrs(c_p, literals, lit_bsize)) goto literal_gc; *redsp += 1; +#endif if (any_heap_refs(c_p->heap, c_p->htop, literals, lit_bsize)) goto literal_gc; *redsp += 1; |