SLAZ441K March   2013  – May 2021 MSP430G2955

 

  1. 1Functional Advisories
  2. 2Preprogrammed Software Advisories
  3. 3Debug Only Advisories
  4. 4Fixed by Compiler Advisories
  5. 5Nomenclature, Package Symbolization, and Revision Identification
    1. 5.1 Device Nomenclature
    2. 5.2 Package Markings
      1.      DA38
      2.      RHA40
    3. 5.3 Memory-Mapped Hardware Revision (TLV Structure)
  6. 6Advisory Descriptions
    1. 6.1  BCL12
    2. 6.2  CPU4
    3. 6.3  SYS15
    4. 6.4  TA12
    5. 6.5  TA16
    6. 6.6  TA21
    7. 6.7  TAB22
    8. 6.8  TAB26
    9. 6.9  TAB26
    10. 6.10 TB2
    11. 6.11 TB16
    12. 6.12 TB24
    13. 6.13 USCI20
    14. 6.14 USCI22
    15. 6.15 USCI23
    16. 6.16 USCI24
    17. 6.17 USCI25
    18. 6.18 USCI26
    19. 6.19 USCI29
    20. 6.20 USCI30
    21. 6.21 USCI34
    22. 6.22 USCI35
    23. 6.23 USCI40
    24. 6.24 XOSC5
  7. 7Revision History

CPU4

CPU Module

Category

Compiler-Fixed

Function

PUSH #4, PUSH #8

Description

The single operand instruction PUSH cannot use the internal constants (CG) 4 and 8.  The other internal constants (0, 1, 2, -1) can be used. The number of clock cycles is different:

PUSH #CG   uses address mode 00, requiring 3 cycles, 1 word instruction
PUSH #4/#8 uses address mode 11, requiring 5 cycles, 2 word instruction

Workaround

Refer to the table below for compiler-specific fix implementation information.

IDE/Compiler Version Number Notes
IAR Embedded Workbench IAR EW430 v2.x until v6.20 User is required to add the compiler flag option below. --hw_workaround=CPU4
IAR Embedded Workbench IAR EW430 v6.20 or later Workaround is automatically enabled
TI MSP430 Compiler Tools (Code Composer Studio) v1.1 or later
MSP430 GNU Compiler (MSP430-GCC) MSP430-GCC 4.9 build 167 or later