The compiler and scalar unit enable the programmer to use standard C data types. The following table shows standard C data types with their precisions. All types, except float and double, support signed and unsigned prefixes.
| Data Type | Precision | Comment |
|---|---|---|
| char | 8-bit signed | |
| short | 16-bit signed | |
| int | 32-bit signed | Native support |
| long | 64-bit signed | |
| float | 32-bit | Emulated. Scalar processor does not contain a floating point unit (FPU). |
| double | 64-bit | Emulated. Scalar processor does not contain a floating point unit (FPU). |
Important: The scalar unit still handles control flow
statements such as branching even in the presence of vector instructions. This
concept is critical to maximizing the performance of the AI Engine.
Note:
AI Engine hardware does not support GNU defined types like
complex defined in
<complex.h>. GNU defined types work for x86 simulation, but not
for AI Engine
simulation.