【问题标题】:How to disable dead code elimination in the Java compiler?如何在 Java 编译器中禁用死代码消除?
【发布时间】:2010-07-02 01:26:56
【问题描述】:

这似乎是一个奇怪的问题......为什么有人想要禁用这样的东西?但我知道我在做什么(以及为什么我想要/需要这样做)并且我真的想禁用死代码消除。

有可能吗?

顺便说一句,我使用 Eclipse,如果它是相关的...

【问题讨论】:

  • 你是在调试模式下编译吗?
  • 我真的不知道,Eclipse 令人困惑。如何在调试/发布模式下编译?我大多选择“导出”来编译最终文件...
  • 有时当您需要对某些事物进行基准测试时,您可能需要调用一个函数,该函数可以进行一些计算并返回。我觉得这个问题很有用,只是我在这个论坛上没有答案

标签: java compiler-construction dead-code


【解决方案1】:

有可能吗?

我还没有遇到任何方法来做到这一点。似乎没有任何相关选项。

但需要明确的是,死代码消除可以(可能)由字节码编译器和 JIT 中的一个或两个来完成。所以你需要清楚你关心的是哪种情况。 (我猜是字节码编译器……)

【讨论】:

    【解决方案2】:

    我的第一个想法是写一些疯狂的方面并使用编译时编织,这样你的死代码就不再死了......但后来我的脑袋爆炸了。

    【讨论】:

    • "...但后来我的头爆炸了" 凌乱!我想我们也需要考虑删除死编码器:-)
    【解决方案3】:

    我建议你再想一想,尝试用一些不同的方式来实现你的目标。你试图做什么看起来像“黑客”,即使你成功了,你也永远无法确定你的死代码保留机制仍然有效。

    【讨论】:

      猜你喜欢
      • 2012-02-17
      • 2017-03-06
      • 2020-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-13
      • 1970-01-01
      相关资源
      最近更新 更多