diff options
author | Sverker Eriksson <[email protected]> | 2012-05-11 16:58:38 +0200 |
---|---|---|
committer | Sverker Eriksson <[email protected]> | 2012-08-21 19:21:27 +0200 |
commit | 77d6845c94e75b6da1f7f995e39a6ce455e86de6 (patch) | |
tree | 2f64458952562270582da22fa0d18a4959d53a88 | |
parent | 064b42237d891d5fdcb6c1a351980b8291437618 (diff) | |
download | otp-77d6845c94e75b6da1f7f995e39a6ce455e86de6.tar.gz otp-77d6845c94e75b6da1f7f995e39a6ce455e86de6.tar.bz2 otp-77d6845c94e75b6da1f7f995e39a6ce455e86de6.zip |
kernel: Disable hipe compilation for hipe_unified_loader
Workaround for crash in code_server.
-rw-r--r-- | lib/kernel/src/hipe_unified_loader.erl | 7 | ||||
-rw-r--r-- | lib/kernel/test/code_SUITE.erl | 3 |
2 files changed, 9 insertions, 1 deletions
diff --git a/lib/kernel/src/hipe_unified_loader.erl b/lib/kernel/src/hipe_unified_loader.erl index 8b3aa0286d..514c002d87 100644 --- a/lib/kernel/src/hipe_unified_loader.erl +++ b/lib/kernel/src/hipe_unified_loader.erl @@ -34,6 +34,13 @@ -module(hipe_unified_loader). +-compile(no_native). +% 'no_native' is a workaround to avoid "The code server called unloaded module" +% caused by Mod:module_info(exports) in patch_to_emu_step1() called by post_beam_load. +% Reproducable with hipelibs and asn1_SUITE. +% I think the real solution would be to let BIF erlang:load_module/2 redirect all +% hipe calls to the module and thereby remove post_beam_load. + -export([chunk_name/1, %% Only the code and code_server modules may call the entries below! load_native_code/2, diff --git a/lib/kernel/test/code_SUITE.erl b/lib/kernel/test/code_SUITE.erl index 3e8bdaf1ff..827208b048 100644 --- a/lib/kernel/test/code_SUITE.erl +++ b/lib/kernel/test/code_SUITE.erl @@ -1550,7 +1550,8 @@ native_early_modules_1(Architecture) -> true -> ?line true = lists:all(fun code:is_module_native/1, [ets,file,filename,gb_sets,gb_trees, - hipe_unified_loader,lists,os,packages]), + %%hipe_unified_loader, no_native as workaround + lists,os,packages]), ok end. |