![]() |
AI Engine-ML v2 Intrinsics User Guide
v2025.1
|
These annotations are used to interact with the register allocator. More...
These annotations are used to interact with the register allocator.
#define __aie_access_always |
Type qualifier to protect the access to a variable (similar to volatile).
Main difference with volatile is that the compiler will not interfere in the scheduling of __aie_access_always variables. On the other hand, compiler maintains the order of any volatile access in the C source code.
#define __aie_dm_resource_a |
Alias for __aie_register(DM_bankA).
#define __aie_dm_resource_ab |
Alias for __aie_register(DM_bankAB).
#define __aie_dm_resource_ac |
Alias for __aie_register(DM_bankAC).
#define __aie_dm_resource_ad |
Alias for __aie_register(DM_bankAD).
#define __aie_dm_resource_b |
Alias for __aie_register(DM_bankB).
#define __aie_dm_resource_bc |
Alias for __aie_register(DM_bankBC).
#define __aie_dm_resource_bd |
Alias for __aie_register(DM_bankBD).
#define __aie_dm_resource_c |
Alias for __aie_register(DM_bankC).
#define __aie_dm_resource_cd |
Alias for __aie_register(DM_bankCD).
#define __aie_dm_resource_d |
Alias for __aie_register(DM_bankD).
#define __aie_dm_resource_stack |
Alias for __aie_register(DM_stack).
#define __aie_register | ( | x | ) |
Keep the variable in the specified resource.
It can be a specific register or a specific memory.
#define __aie_register_keep | ( | ) |
Keep the variable in a register.
The compiler has the freedom to store the variable in any register. This directive imposes that the variable in a instruction is used as a register operand. Even if the variable is constant, this directive will keep it in a register.
#define __aie_separator | ( | ) |
Inserts a sequence point inside a basic block.
This directive limits the freedom to reorder the expressions and statements inside a basic block during the register allocation phase.
A __aie_separator() splits a basic block into two smaller blocks, which are sequentialized separately.
#define __aie_stream_resource_in_a |
#define __aie_stream_resource_in_b |
#define __aie_stream_resource_out_a |
#define __aie_stream_resource_out_b |