IBM Support

LI77668: IMPROVEMENTS TO MEMSET GENERATED CODE

Subscribe

You can track all active APARs for this component.

APAR status

  • Closed as program error.

Error description

  • Compiler adds improvements to memset generated code.
    

Local fix

  • N/A
    

Problem summary

  • inefficient code being generated for memset.  There are several
    issues 1) The constant area is used to hold the splatted value
    of the character 2) we don't always widen the stores to 8 bytes
    3) there are unnecessary multiply instructions generated by
    widening
    

Problem conclusion

  • The test in macro expansion to decide whether to use 4 byte or
    8 byte stores was incorrect.   Having macro expansion generate
    8 byte stores means that widening is no longer involved.  Also,
    instead of putting the constant into the constant area, let the
    normal macro expansion code decide how to manifest the
    constant.
    

Temporary fix

Comments

APAR Information

  • APAR number

    LI77668

  • 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:

    IV48060

  • 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



Document information

More support for: XL C/C++ for Linux
Compiler

Software version: 12.1

Reference #: LI77668

Modified date: 28 October 2013