首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Rebar3用HiPE编译透析器模块吗?

Rebar3用HiPE编译透析器模块吗?
EN

Stack Overflow用户
提问于 2017-05-12 10:03:19
回答 2查看 205关注 0票数 4

在运行透析器独立运行时,它用HiPE编译其模块,以加快分析速度:

代码语言:javascript
运行
复制
dialyzer --src -r .
  Checking whether the PLT /home/foo/.dialyzer_plt is up-to-date... yes
  Compiling some key modules to native code... done in 0m12.27s
  Proceeding with analysis...

当有许多模块需要分析时,这会对运行时产生很大的影响。

Rebar3在运行rebar3 dialyzer命令时会这样做吗?文档并不是这么说的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-05-14 19:52:06

正如Dogbert在注释中提到的那样,rebar3中的默认设置是使用源格式。本机有一个挂起的拉请求(https://github.com/erlang/rebar3/pull/1493),以便在可用时切换到HiPE格式,但是在rebar3的上下文中,非本地版本基准测试的速度更快,到目前为止我们还没有将其合并。

我刚刚更新了在那里的公关讨论,看看它是否能够被包括,即使在默认情况下没有启用。

票数 3
EN

Stack Overflow用户

发布于 2019-10-04 16:30:07

回到这个问题之后,Erlang/OTP 22.0.6已经从Dialyzer中删除了HiPE编译特性,因此Rebar3无法激活该特性。来自发布公告

代码语言:javascript
运行
复制
  OTP-15949    Application(s): dialyzer, hipe

               *** POTENTIAL INCOMPATIBILITY ***

               The HiPE compiler would badly miscompile certain
               try/catch expressions, so it will now refuse to compile
               modules containing try or catch.

               As a consequence of this, dialyzer will no longer
               compile key modules to native code.

此外,根据这个邮件列表线程,HiPE将在Erlang/OTP 24中完全删除。这是在此拉请求做的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43934929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档