| |||
| Home > Compiler-specific Features > ETSI basic operations | |||
The compilation tools support the original ETSI family of basic operations described in the ETSI G.729 recommendation Coding of speech at 8 kbit/s using conjugate-structure algebraic-code-excited linear prediction (CS-ACELP).
To make use of the ETSI basic operations in your own code,
include the standard header file dspfns.h.
The intrinsics supplied in dspfns.h are listed
in Table 21.
Table 21. ETSI basic operations supported by the ARM compilation tools
| Intrinsics | ||||
|---|---|---|---|---|
abs_s | L_add_c | L_mult | L_sub_c | norm_l |
add | L_deposit_h | L_negate | mac_r | round |
div_s | L_deposit_l | L_sat | msu_r | saturate |
extract_h | L_mac | L_shl | mult | shl |
extract_l | L_macNs | L_shr | mult_r | shr |
L_abs | L_msu | L_shr_r | negate | shr_r |
L_add | L_msuNs | L_sub | norm_s | sub |
The header file dspfns.h also exposes certain
status flags as global variables for use in your C or C++ programs.
The status flags exposed by dspfns.h are listed
in Table 22.
Table 22. ETSI status flags exposed in the ARM compilation tools
| Status flag | Description |
|---|---|
Overflow | Overflow status flag. Generally, saturating functions have a sticky effect on overflow. |
Carry | Carry status flag. |