Addressing functions of the epiphany 3 architecture. More...
This graph shows which files directly or indirectly include this file:Macros | |
| #define | mc_addr_mask_id(addr) (((mc_addr_t)(addr)) & mc_glb_id_mask) |
| Masks the id part of 'addr'. | |
| #define | mc_addr_mask_ad(addr) (((mc_addr_t)(addr)) & mc_glb_addr_mask) |
| Masks the displacement (local-addr) part of 'addr'. | |
| #define | mc_addr_has_id(addr) mc_addr_mask_id(addr) |
| True 'addr' has 'id' (not zero id) | |
| #define | mc_addr_get_id(addr) ((mc_workeru_id_t)(mc_addr_mask_id(addr) >> mc_glb_addr_sz)) |
| Returns the id part of 'addr' as mc_workeru_id_t value. | |
| #define | mc_addr_set_id(id, addr) ((mc_addr_t)((((mc_addr_t)(id)) << mc_glb_addr_sz) | mc_addr_mask_ad(addr))) |
| Sets the id part of 'addr' with 'id'. | |
| #define | mc_addr_get_disp(addr) ((mc_addr_t)mc_addr_mask_ad(addr)) |
| Returns the displacement (local-addr) part of 'addr' as mc_addr_t value. | |
| #define | mc_addr_set_disp(disp, addr) ((mc_addr_t)(mc_addr_mask_id(addr) | mc_addr_mask_ad(disp))) |
| Sets the displacement (local-addr) part of 'addr' with 'disp'. | |
| #define | mc_addr_same_id(addr1, addr2) (mc_addr_mask_id(addr1) == mc_addr_mask_id(addr2)) |
| True if 'addr1' and 'addr2' have the same id part value. | |
Typedefs | |
| typedef uint32_t | mc_addr_t |
| Type for epiphany addresses. | |
| typedef uint16_t | mc_workeru_id_t |
| Type for workeru ids. | |
| typedef uint16_t | mc_workeru_co_t |
| Type for workeru coordinates (row and col) | |
| typedef uint16_t | mc_workeru_nn_t |
| Type for workeru numbers (starts in 0) | |
Addressing functions of the epiphany 3 architecture.
1.8.11