IBM Support

IJ57022: CRASH DURING JIT COMPILATION WHEN FSD (DEBUG) ENABLED

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 

APAR status

  • Closed as program error.

Error description

  • Error Message: The JVM crashes unexpectedly while the JIT is
    compiling a method and the JVM is running in debug mode (FSD
    enabled is shown on the jitmodes line in the javacore).
    .
    Stack Trace: In the only report of the problem so far, the call
    stack was
    TR_OSRDefInfo::addSharingInfo+0x39f (OSRDefAnalysis.cpp:209,
    0x00007FFD24B1A16F <OSB>j9jit29+0x5ea16f<CSB>)
    TR_OSRDefInfo::performAnalysis+0x45 (OSRDefAnalysis.cpp:92,
    0x00007FFD24B190F5 <OSB>j9jit29+0x5e90f5<CSB>)
    TR_UseDefInfo::prepareUseDefInfo+0x135a (UseDefInfo.cpp:358,
    0x00007FFD24B7794A <OSB>j9jit29+0x64794a<CSB>)
    TR_OSRDefAnalysis::perform+0x50c (OSRDefAnalysis.cpp:638,
    0x00007FFD24B1B1FC <OSB>j9jit29+0x5eb1fc<CSB>)
    OMR::Optimizer::performOptimization+0x171d
    (OMROptimizer.cpp:2063, 0x00007FFD24A96BED
    <OSB>j9jit29+0x566bed<CSB>)
    OMR::Optimizer::optimize+0x3c5 (OMROptimizer.cpp:1122,
    0x00007FFD24A93575 <OSB>j9jit29+0x563575<CSB>)
    OMR::ResolvedMethodSymbol::genIL+0x757
    (OMRResolvedMethodSymbol.cpp:1273, 0x00007FFD2492C967
    <OSB>j9jit29+0x3fc967<CSB>)
    OMR::Compilation::compile+0x31e (OMRCompilation.cpp:1009,
    0x00007FFD248D1CAE <OSB>j9jit29+0x3a1cae<CSB>)
    .
    

Local fix

  • The problem only happens in debug mode, so first confirm that
    running with debug is intentional.
    The method that triggered the problem in the JIT compiler can be
    excluded using the -Xjit:exclude= option, e.g. if the compiler
    failed while compiling a.b.AClass.aMethod it can be excluded
    from compilation with
    -Xjit:exclude={a/b/AClass.aMethod(*}
    If an existing Xjit option is already being used it can either
    be merged with the new exclude parameter or multiple JIT options
    can be automatically merged by specifying
    -XX:+MergeCompilerOptions
    

Problem summary

  • While JIT compiling in debug mode, an edge case could occur
    where constant branch folding allowed a section of code to be
    removed prior to running OSR analysis that assumes the IL still
    represents the complete bytecodes of the method.
    

Problem conclusion

Temporary fix

Comments

APAR Information

  • APAR number

    IJ57022

  • Reported component name

    JIT

  • Reported component ID

    620700124

  • Reported release

    130

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2026-01-06

  • Closed date

    2026-01-06

  • Last modified date

    2026-01-06

  • APAR is sysrouted FROM one or more of the following:

  • APAR is sysrouted TO one or more of the following:

Fix information

  • Fixed component name

    JIT

  • Fixed component ID

    620700124

Applicable component levels

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSNVBF","label":"Runtimes for Java Technology"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"130","Line of Business":{"code":"LOB08","label":"Cognitive Systems"}}]

Document Information

Modified date:
07 January 2026