IV29911: INCORRECT HANDLING OF INTEGER INDUCTION VARIABLE VALUE OVERFLOW

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: Problem could manifest in any way since the
    generated code is incorrect :
    We could get invalid output, exception or crash depending on
    what the program does with the value that is incorrect. The most
    distinctive hint of this problem is if the user code multiplies
    an integer induction variable by a constant value inside the
    loop, e.g.
          for (i = n-5; i <= n; i++)
             {
             System.out.println ( i + " " +  ((long)i) * 4 + "\n");
             count++;
             if (count >= 10) break;
             }
    and "i" could overflow in the loop.
    In such a case, if the JIT compiler used a long induction
    variable instead
    of the original integer induction variable (after JIT
    optimization) then
    an error could occur.
    .
    Stack Trace: N/A
    .
    

Local fix

  • -Xjit:disableLoopStrider would work around this problem; this
    turns off a JIT optimization that should not affect performance
    noticeably
    

Problem summary

  • The problem is caused when an integer induction variable is
    converted to a long induction variable by a JIT optimization in
    cases when the integer induction variable could overflow.
    

Problem conclusion

  • This defect will be fixed in:
    7.0.0 SR3
    6.0.1 SR4
    6.0.0 SR12
    5.0.0 SR15
    .
    The JIT compiler has been updated to prevent the problem from
    occurring.
    

Temporary fix

Comments

APAR Information

  • APAR number

    IV29911

  • Reported component name

    JAVA 5 JIT

  • Reported component ID

    620500124

  • Reported release

    500

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2012-10-10

  • Closed date

    2012-10-10

  • Last modified date

    2012-10-10

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

    IV29910

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

Fix information

  • Fixed component name

    JAVA 5 JIT

  • Fixed component ID

    620500124

Applicable component levels

  • R500 PSY

       UP



Rate this page:

(0 users)Average rating

Document information


More support for:

Runtimes for Java Technology
Just In Time (JIT) Compiler

Software version:

5.0

Reference #:

IV29911

Modified date:

2012-10-10

Translate my page

Machine Translation

Content navigation