Fixes are available
April 2011 Update for XL Fortran for Linux, V13.1
July 2011 Update for XL Fortran for Linux, V13.1
October 2011 Update for XL Fortran for Linux, V13.1
June 2012 Update for XL Fortran for Linux, V13.1
October 2012 Update for XL Fortran for Linux, V13.1
XL Fortran for Linux Fix Pack 8 (June 2013 Update) for 13.1
APAR status
Closed as program error.
Error description
When using the POPCNT compiler intrinsic, the Fortran compiler is generating an unnecessary sign extension EXTSW instruction when using 64-bit mode. =============== Example ================ logical(4):: a4B integer(4):: r4B logical(8):: a8B integer(4):: r8B ... r4B = popcnt (a4B) r8B = popcnt (a8B) ----- Generated Code ----- popcntw 7C0002F4 1 POPCNT4 gr0=gr0 extsw 7C0007B4 1 EXTS4 gr0=gr0 stw 90010074 1 ST4A r4b(gr1,116)=gr0 popcntd 7C0003F4 1 POPCNT8 gr0=gr0 extsw 7C0007B4 1 EXTS4 gr0=gr0 stw 90010080 1 ST4A r8b(gr1,128)=gr0
Local fix
N/A
Problem summary
PROBLEM DESCRIPTION: In 64 bit mode, each POPCNT instruction was followed by an unneeded EXTS4 extend sign instruction. USERS AFFECTED: Users calling one of the __popcnt... built in functions.
Problem conclusion
EXTS4 is unneeded because POPCNT can only produce values from 0 to 64, the sign bit can never be set, and extending it will leave the value unchanged. EXTS4 after POPCNT is now discarded.
Temporary fix
Comments
APAR Information
APAR number
LI75814
Reported component name
XL FORTRAN LINU
Reported component ID
5724X1600
Reported release
D10
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2010-12-21
Closed date
2011-04-27
Last modified date
2011-04-27
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 FORTRAN LINU
Fixed component ID
5724X1600
Applicable component levels
RD10 PSY
UP
[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSAT4T","label":"XL Fortran for Linux"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"D10","Line of Business":{"code":"LOB57","label":"Power"}}]
Document Information
Modified date:
15 October 2021