IBM Support

IV38752: ILLEGAL INSTRUCTION IN JIT-COMPILED CODE

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 SIGILL or ABEND is raised by a JIT-compiled
    method that is attempting to execute z196 instructions such as
    Load High (LFH) or Rotate Then Inserted Selected Bits (RISBGN).
    This only occurs on a system that is equipped with an older
    processor such as the z9 or the z10, but is running z/VM to
    emulate newer hardware.
    .
    Stack Trace: N/A
    .
    

Local fix

  • The issue can be avoided by configuring z/VM correctly to
    reflect the true capabilities of the underlying hardware.
    

Problem summary

  • The problem is caused by the deceptive configuration of z/VM,
    which makes the operating system report the type of the
    processor as a z196 (or newer). The Java JIT compiler uses the
    return value of a system call to determine the processor type,
    and generate instructions to exploit features on that processor
    type. The resulting instructions are not actually executable on
    the underlying hardware, and cause a hardware trap.
    

Problem conclusion

  • This defect will be fixed in:
    6.0.1 SR6
    7.0.0 SR5
    6.0.0 SR14
    .
    The JIT compiler has been updated to query the hardware directly
    about available features, instead of relying on the operating
    system.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV38752

  • Reported component name

    JIT

  • Reported component ID

    620700124

  • Reported release

    260

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-03-28

  • Closed date

    2013-04-10

  • Last modified date

    2013-04-10

  • 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

  • R260 PSY

       UP

  • R600 PSY

       UP



Document information

More support for: Runtimes for Java Technology
Just In Time (JIT) Compiler

Software version: 260

Reference #: IV38752

Modified date: 10 April 2013