Fixes are available
XL C/C++ for Linux Fix Pack 8 (October 2015 Update) for 12.1
XL C/C++ for Linux Fix Pack 4 (October 2013 Update) for 12.1
XL C/C++ for Linux Fix Pack 5 (December 2013 Update) for 12.1
XL C/C++ for Linux Fix Pack 6 (February 2014 Update) for 12.1
XL C/C++ for Linux Fix Pack 7 (May 2014 Update) for 12.1
APAR status
Closed as program error.
Error description
There are certain scenarios where the compiler might remove a necessary load 'after' a sync() instruction before its used. An example is the following: .L1629: lwz r3,96(r31) lwz r6,104(r31) <---- load of r6 subf r4,r6,r3 addi r0,r3,-1 rlwinm. r3,r4,0,15,31 beq .L2014 rlwinm r4,r0,0,15,31 stw r4,96(r31) sync <---- sync instruction ld r3,144(r31) rlwinm r5,r0,3,12,28 subf r0,r6,r0 <---- r6 is being used in subf without it being loaded again after the sync instruction rlwinm r0,r0,0,15,31 cmplw cr0,r0,r27 ldx r3,r3,r5 std r3,112(r1) beq .L1655 cmpdi cr0,r0,0 bne .L173
Local fix
N/A
Problem summary
USERS AFFECTED: Users coding in assembly and those who use the sync instruction may be affected by this issue. PROBLEM DESCRIPTION: The compiler forgets to generate a load after the sync instruction.
Problem conclusion
The compiler has been fixed to invalidate all aliasing symbols before sync the instruction so that they will be reloaded after sync instruction.
Temporary fix
Comments
APAR Information
APAR number
LI77616
Reported component name
XL C/C++ FOR LI
Reported component ID
5725C7300
Reported release
C10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2013-10-28
Closed date
2013-10-28
Last modified date
2013-10-28
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
XL C/C++ FOR LI
Fixed component ID
5725C7300
Applicable component levels
RC10 PSN IV51008
UP06/09/13
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSXVZZ","label":"XL C\/C++ for Linux"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"12.1","Line of Business":{"code":"LOB57","label":"Power"}}]
Document Information
Modified date:
14 October 2021