Uploaded image for project: 'Embedded Software & Tools'
  1. Embedded Software & Tools
  2. EXT_EP-9776

#include <math.h> causes compiler to emit advice: (Performance) EABI double precision is 64-bits as opposed to 32-bits for COFF

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Medium Medium
    • Code Generation Tools
    • CODEGEN-7397
    • C2000_20.2.0.LTS
    • C2000_20.2.2.LTS*
    • default
    • Either disable all performance advice with --advice:performance=none, or disable only this advice with --diag_suppress=3195
    • Hide
      The new EABI double performance advice should only be emitted for user files and not for RTS include headers.

      Any advice with diagnostic id 3195 can be safely ignored for all RTS header files.

      The new EABI float/double performance advice is intended to advise users when code that may have originally been developed for COFF ABI (for which float doubles are 32-bits), is instead compiled for EABI (for which float doubles are now 64-bits).

      If the original usage of double was intended only for 32-bit, then when compiled for EABI, slower RTS routines for handling 64-bit doubles will be included in the application.
      Show
      The new EABI double performance advice should only be emitted for user files and not for RTS include headers. Any advice with diagnostic id 3195 can be safely ignored for all RTS header files. The new EABI float/double performance advice is intended to advise users when code that may have originally been developed for COFF ABI (for which float doubles are 32-bits), is instead compiled for EABI (for which float doubles are now 64-bits). If the original usage of double was intended only for 32-bit, then when compiled for EABI, slower RTS routines for handling 64-bit doubles will be included in the application.

      For below new EABI performance advice incorrectly flagged against RTS library header files:
      "C:\ti\compilers\ti-cgt-c2000_20.2.0.LTS\include_defs.h", line 329 (col. 37): advice #3195-D: (Performance) EABI double precision is 64-bits as opposed to 32-bits for COFF. Consider changing doubles to floats for improved performance in FPU32-mode.

      The new EABI double performance advice should only be emitted for user files and not for RTS include headers.

      Any advice with diagnostic id 3195 can be safely ignored for all RTS header files.

      The new EABI float/double performance advice is intended to advise users when code that may have originally been developed for COFF ABI (for which float doubles are 32-bits), is instead compiled for EABI (for which float doubles are now 64-bits).

      If the original usage of double was intended only for 32-bit, then when compiled for EABI, slower RTS routines for handling 64-bit doubles will be included in the application.

            syncuser TI User
            syncuser TI User
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: