← Back to context

Comment by pjmlp

18 days ago

I use them everywhere since the late 1990's, it is called managed runtime.

That is a completely different category. I've never experienced a logic error due to a managed runtime and only once or twice ever due to a C++ compiler.

  • I certainly already experienced crashes due to JIT miscompilations, even though it was a while back, on Websphere with IBM Java implementation.

    Also it is almost impossible to guarantee two runs of an application will trigger the same machine code output, unless the JIT is either very dumb on its heuristics and PGO analysis, or one got lucky enough to reproduce the same computation environment.

    • > Also it is almost impossible to guarantee two runs of an application will trigger the same machine code output

      As long as the JIT is working properly, it shouldn't matter: the code should always run "as if" it was being run on an interpreter. That is, the JIT is nothing more than a speed optimization; even if you disable the JIT, the result should still be the same.

      1 reply →