IBM Support

IJ14196: JAVA JIT PPC: COMPILE TIME CRASH IN USEREGISTER()

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: A SIGSEGV at JIT compile time.
    .
    Stack Trace: OMR::Instruction::useRegister()
    OMR::Power::RegisterDependencyConditions::bookKeepingRegisterUse
    s()
    generateDepConditionalBranchInstruction()
    OMR::Power::TreeEvaluator::compareLongsForEquality()
    OMR::Power::TreeEvaluator::ifacmpneEvaluator()
    ...
    Note: The stack trace may look significantly different to this.
    This is only an example of one instance of this issue.
    .
    This problem can only occur on POWER (PPC) processors and only
    in Java 8 SR5 through Java 8 SR5 FP30.
    The problem will most likely result in a JIT compile time crash
    but it's also possible that the problem will result in
    unexpected exceptions or unexpected behaviour.
    This APAR caused a performance regression that is described by
    APAR IJ21489
    

Local fix

  • The problem can be avoid by setting the following environment
    variable prior to starting the JVM:
    export TR_DisableDirectNativeCall=1
    This will have a minimal effect on performance.
    

Problem summary

  • The JIT might fail to generate code to call a JNI method when
    the same JNI method is called more then once within the same
    method. The issue occurs when the JIT is able to devirtualize
    one of the calls but another call can not be devirtualized.
    

Problem conclusion

  • The JIT was modified such that shared method symbols used in a
    direct call sequence are not marked in a way that makes them
    unsuitable for indirect calls sequences.
    .
    This APAR will be fixed in the following Java Releases:
       8    SR5 FP35  (8.0.5.35)
    .
    Contact your IBM Product's Service Team for these Service
    Refreshes and Fix Packs.
    For those running stand-alone, information about the available
    Service Refreshes and Fix Packs can be found at:
               https://www.ibm.com/developerworks/java/jdk/
    

Temporary fix

Comments

APAR Information

  • APAR number

    IJ14196

  • Reported component name

    JIT

  • Reported component ID

    620700124

  • Reported release

    130

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2019-02-26

  • Closed date

    2019-03-14

  • Last modified date

    2019-12-09

  • 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":"BU048","label":"IBM Software"},"Product":{"code":"SSC9HBA","label":"Just In Time (JIT) Compiler"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"130","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
09 December 2019