3.11 Texas Instruments (TI) C55x intrinsics for optimizing C code

The ARM compilation tools support the emulation of selected TI C55x intrinsics.

The TI C55x compiler recognizes a number of intrinsics for the optimization of C code. The ARM compilation tools support the emulation of selected TI C55x intrinsics through the header file, c55x.h.
c55x.h gives a complete list of the TI C55x intrinsics that are emulated by the ARM compilation tools.
TI C55x intrinsics that are emulated in c55x.h include:
  • Intrinsics for addition, subtraction, negation and absolute value, such as _sadd and _ssub. For example, _sadd(v1, v2) returns the 16-bit saturated sum of v1 and v2.
  • Intrinsics for multiplication and shifting, such as _smpy and _sshl. For example, _smpy(v1, v2) returns the saturated fractional-mode product of v1 and v2.
  • Intrinsics for rounding, saturation, bitcount and extremum, such as _round and _count. For example, _round(v1) returns the value v1 rounded by adding 215 using unsaturated arithmetic, clearing the lower 16 bits.
  • Associative variants of intrinsics for addition and multiply-and-accumulate. This includes all TI C55x intrinsics prefixed with _a_, for example, _a_sadd and _a_smac.
  • Rounding variants of intrinsics for multiplication and shifting, for example, _smacr and _smasr.
The following TI C55x intrinsics are not supported in c55x.h:
  • All long long variants of intrinsics. This includes all TI C55x intrinsics prefixed with _ll, for example, _llsadd and _llshl. long long variants of intrinsics are not supported in the ARM compilation tools because they operate on 40-bit data.
  • All arithmetic intrinsics with side effects. For example, the TI C55x intrinsics _firs and _lms are not defined in c55x.h.
  • Intrinsics for ETSI support functions, such as L_add_c and L_sub_c.

    Note

    An exception is the ETSI support function for saturating division, divs. This intrinsic is supported in c55x.h.
Related concepts
3.1 Compiler intrinsics
3.5 Compiler intrinsics for controlling IRQ and FIQ interrupts
3.9 Compiler support for European Telecommunications Standards Institute (ETSI) basic operations
Related reference
3.2 Performance benefits of compiler intrinsics
3.3 ARM assembler instruction intrinsics
Related information
Texas Instruments, http://www.ti.com
Non-ConfidentialPDF file icon PDF versionARM DUI0375E
Copyright © 2007, 2008, 2011, 2012, 2014 ARM. All rights reserved.