https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63954
Bug ID: 63954
Summary: msp430 multiplication unsafe for use in interrupts
Product: gcc
Version: 5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: pab at pabigot dot com
The msp430-elf target currently implements integer multiplication by calls to a
function that invokes the hardware peripheral by loading peripheral registers
and reading results. The functions that implement the multiplication are not
protected against interrupts.
A consequence is that a calculation performed in an application with interrupts
enabled will be corrupted if an interrupt handler that includes an integer
multiplication operation is invoked during the application code.
Until this is fixed users should not invoke multiplications from within
interrupt handlers, or from any code called by interrupt handlers (including
unspecified functions within the standard C library).