Keil Logo

MDU_F120 Compiler Directive

Abbreviation

None.

Arguments

None.

Default

Multiply and Accumulate Unit support is disabled.

µVision

Options — Target — Use On—Chip Arithmetic Unit.

Description

The MDU_F120 directive enables support for the Multiple and Accumulate Unit (MAC0) of the Silicon Labs C8051F12x devices. When this directive is specified the compiler uses the MAC to increase the speed of the following operations:

Operation Implementation
signed int mul ?C?IMUL_F120 routine
unsigned int mul ?C?IMUL_F120 routine
signed long mul ?C?LMUL_F120 routine
unsigned long mul ?C?LMUL_F120 routine
signed long shift left ?C?LSHL_F120 routine
unsigned long shift left ?C?LSHL_F120 routine
signed long shift right ?C?ULSHR_F120 routine
unsigned long shift right ?C?SLSHR_F120 routine

Note

  • The arithmetic unit does not allow reentrant code and cannot be used in multiple threads or the main and interrupt routines at the same time. You may therefore need to disable the MDU unit with NOMOD_F120.
See Also

NOMDU_F120

Example
C51 SAMPLE.C MDU_F120

#pragma mdu_f120

Related Knowledgebase Articles

  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.