IBM Support

PI59428: COMPILER GENERATES INVALID CODE WITH OPT(2)

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • Compiler generates invalid code with OPT(2)
    

Local fix

  • Do not use optimization.
    

Problem summary

  • ****************************************************************
    * USERS AFFECTED: Users of Enterprise COBOL V5.2 compiling     *
    *                 programs with OPT(2) that contain several    *
    *                 successive compares for equality with no     *
    *                 intervening code (e.g. IF A = X AND B = X).  *
    *                                                              *
    ****************************************************************
    * PROBLEM DESCRIPTION: Incorrect output at runtime: The        *
    *                      optimizer will attempt to combine       *
    *                      several smaller compares into one       *
    *                      larger compare. Rarely, it would do so  *
    *                      when the combined compare would have    *
    *                      different behavior than the individual  *
    *                      compares.                               *
    *                                                              *
    ****************************************************************
    * RECOMMENDATION: Apply the provided PTF.                      *
    *                                                              *
    ****************************************************************
    The optimizer can combine successive compares if the data items
    being compared are sequential in memory. The optimizer was
    incorrectly combining compares at OPT(2) by only considering
    the offsets of the data items and not which base addresses they
    were relative to.
    

Problem conclusion

  • The optimizer will now only combine successive compares if the
    data items are consecutive relative to the same base addresses.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PI59428

  • Reported component name

    ENT COBOL FOR Z

  • Reported component ID

    5655W3200

  • Reported release

    520

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2016-03-18

  • Closed date

    2016-05-27

  • Last modified date

    2016-07-04

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

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

    PI63123

Modules/Macros

  •    IGYCBE
    

Fix information

  • Fixed component name

    ENT COBOL FOR Z

  • Fixed component ID

    5655W3200

Applicable component levels

  • R520 PSY UI38258

       UP16/06/02 P F606

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SS6SG3","label":"Enterprise COBOL for z\/OS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"520","Edition":"","Line of Business":{"code":"LOB17","label":"Mainframe TPS"}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"520","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
04 July 2016