Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

All is broken on 17.5 with HiPE #22

Closed
kxepal opened this issue May 7, 2015 · 5 comments
Closed

All is broken on 17.5 with HiPE #22

kxepal opened this issue May 7, 2015 · 5 comments

Comments

@kxepal
Copy link

kxepal commented May 7, 2015

Since bear declares a flag to compile with HiPE support, it's surprise that it doesn't works:

$ ./rebar eunit
==> bear (eunit)
Compiled test/bear_test.erl
Compiled src/bear.erl
...
bear_test: negative2_test...*failed*
in function bear:get_statistics_subset/2
  called as get_statistics_subset([-1,-1,-2,-2,-3,-5,-6,-10],[min])
in call from bear_test:negative2_test/0 (test/bear_test.erl, line 284)
in call from bear_test:negative2_test/0
**error:undef



=ERROR REPORT==== 7-May-2015::14:36:54 ===
Native loading of /home/kxepal/projects/forks/bear/.eunit/bear.beam failed: {'EXIT',
                                                                             {badarg,
                                                                              [{hipe_bifs,
                                                                                patch_call,
                                                                                [1079926198,
                                                                                 140635773809724,
                                                                                 []],
                                                                                []},
                                                                               {hipe_unified_loader,
                                                                                patch_call_insn,
                                                                                3,
                                                                                [{file,
                                                                                  "hipe_unified_loader.erl"},
                                                                                 {line,
                                                                                  507}]},
                                                                               {hipe_unified_loader,
                                                                                patch_bif_call_list,
                                                                                4,
                                                                                [{file,
                                                                                  "hipe_unified_loader.erl"},
                                                                                 {line,
                                                                                  492}]},
                                                                               {hipe_unified_loader,
                                                                                patch_call,
                                                                                5,
                                                                                [{file,
                                                                                  "hipe_unified_loader.erl"},
                                                                                 {line,
                                                                                  483}]},
                                                                               {hipe_unified_loader,
                                                                                patch,
                                                                                5,
                                                                                [{file,
                                                                                  "hipe_unified_loader.erl"},
                                                                                 {line,
                                                                                  458}]},
                                                                               {hipe_unified_loader,
                                                                                load_common,
                                                                                4,
                                                                                [{file,
                                                                                  "hipe_unified_loader.erl"},
                                                                                 {line,
                                                                                  235}]},
                                                                               {hipe_unified_loader,
                                                                                load_native_code,
                                                                                2,
                                                                                [{file,
                                                                                  "hipe_unified_loader.erl"},
                                                                                 {line,
                                                                                  105}]},
                                                                               {code_server,
                                                                                load_native_code,
                                                                                2,
                                                                                [{file,
                                                                                  "code_server.erl"},
                                                                                 {line,
                                                                                  1294}]}]}}
undefined
*** test module not found ***
**bear

=======================================================
  Failed: 46.  Skipped: 0.  Passed: 1.
One or more tests were cancelled.
ERROR: Cover analyze failed for bear: {not_cover_compiled,bear} "/home/kxepal/projects/forks/bear/.eunit/bear.beam"
ERROR: eunit failed while processing /home/kxepal/projects/forks/bear: {'EXIT',
    {function_clause,
        [{rebar_eunit,'-cover_write_index/2-fun-0-',[{0,0},[bear]],[]},
         {lists,partition,4,[{file,"lists.erl"},{line,1300}]},
         {rebar_eunit,cover_write_index,2,[]},
         {rebar_eunit,cover_analyze,3,[]},
         {rebar_eunit,eunit,2,[]},
         {rebar_core,run_modules,4,[]},
         {rebar_core,execute,4,[]},
         {rebar_core,process_dir,4,[]}]}}

@joewilliams
Copy link
Contributor

I haven't tested bear with newer than R16.

@janl
Copy link

janl commented Jul 23, 2015

does it have to have hipe?

@joewilliams
Copy link
Contributor

If hipe is causing this to be unstable in general I'd be happy to merge a PR removing it.

@kxepal
Copy link
Author

kxepal commented Jul 24, 2015

@joewilliams I made #23 for that.

Also, we eventually found that erlc provides an option to compile with hipe support +native, but it doesn't gives any options to not do that if some module declares it (except if you build erlang without hipe support). So, I think, in general it's good to delegate decision of compile with native option or not to user`s rebar.config script or whatever is used to build the project.

@joewilliams
Copy link
Contributor

Folsom has moved, please resubmit your issue at https://github.com/folsom-project Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants