IBM Support

IV50060: AND/OR/XOR WITH ONE OF THE OPERANDS SHIFTED BY 32 MIGHT PRODUCE INCORRECT RESULT

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: N/A
    .
    Stack Trace: N/A
    .
    A Java program performing bitwise and/or arithmetic operations
    on long variables produces incorrect result.
    

Local fix

  • This problem can be avoided by setting the JVM option
    -Xjit:exclude={full method name} for the method that is causing
    the issue. However, this may cause some performance degradation.
    

Problem summary

  • The issue happens only on 64-bit System z with AND, OR and XOR
    operations where one of the operands is a long variable that is
    right-shifted by 32. The JIT compiler incorrectly generates code
    that uses only the low half of the long instead of the whole
    64-bit value. The problem could potentially affect arithmetic
    expressions that do not explicitly involve bitwise operations,
    since certain arithmetic operations could be optimized into
    bitwise ones.
    

Problem conclusion

  • This defect will be fixed in:
    7.0.0 SR6
    6.0.1 SR7
    6.0.0 SR15
    5.0.0 SR16 FP4
    .
    The JIT compiler has been updated to compile bitwise operations
    of shifted long values correctly.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV50060

  • Reported component name

    JIT

  • Reported component ID

    620700124

  • Reported release

    260

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2013-09-26

  • Closed date

    2013-09-26

  • Last modified date

    2013-10-18

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

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

    IV50061

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 #: IV50060

Modified date: 18 October 2013