diff options
| -rw-r--r-- | src/rabbit_hipe.erl | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/rabbit_hipe.erl b/src/rabbit_hipe.erl index 0302d82839..05b5f3719d 100644 --- a/src/rabbit_hipe.erl +++ b/src/rabbit_hipe.erl @@ -44,7 +44,8 @@ hipe_compile() -> %% happens when RabbitMQ is stopped (just the %% application, not the entire node) and started %% again. - already_hipe_compiled(HM)], + already_hipe_compiled(HM) + andalso (not compiled_with_version_support(HM))], case HipeModules of [] -> {ok, already_compiled}; _ -> do_hipe_compile(HipeModules) @@ -59,6 +60,10 @@ already_hipe_compiled(Mod) -> code:is_module_native(Mod) =:= false end. +compiled_with_version_support(Mod) -> + proplists:get_value(erlang_version_support, Mod:module_info(attributes)) + =/= undefined. + do_hipe_compile(HipeModules) -> Count = length(HipeModules), io:format("~nHiPE compiling: |~s|~n |", |
