APAR status
Closed as program error.
Error description
Error Message: Code that accesses successive elements of a byte array and combines those elements using a combination of shifts and bitwise 'or' operators may produce incorrect results when compiled by the JIT. Example source code that could be impacted: int result = (data[i] & 0xff) | ((data[i+1] & 0xff) << 8) | ((data[i + 2] & 0xff) << 16) | (data[i + 3] << 24); The problem was introduced in Java 8 SR5 and can only occur when running on little endian architectures like Intel, but does not effect big endian systems like zOS/zLinux or AIX.. . Stack Trace: N/A .
Local fix
The problem can be avoided by setting the following environment variable before starting the JVM: TR_DisableIORByteSwap=1
Problem summary
A new optimisation was added in 8SR5 that detects patterns of successive byte array accesses that are equivalent to a single read of a larger entity. Unfortunately the optimisation adapted incorrectly to little vs big endian byte in word order.
Problem conclusion
The optimisation has been fixed to return the bytes in the expected order. . This APAR will be fixed in the following Java Releases: 8 SR5 FP5 (8.0.5.5) . 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
IJ00732
Reported component name
JIT
Reported component ID
620700124
Reported release
130
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2017-10-13
Closed date
2017-10-19
Last modified date
2017-11-02
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
R130 PSY
UP
[{"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:
02 November 2017