| AI Engine API User Guide (AIE-API) 2026.1

Loading...
Searching...
No Matches
utils.hpp File Reference
`#include <array>`
`#include <cassert>`
`#include <tuple>`
`#include <type_traits>`
`#include "config.hpp"`

## Namespaces
namespace | aie
| Base namespace for AIE operations and types.

## Macros
#define | __AIE_API_DETAIL_UTILS__HPP__
#define | REQUIRES(a)
#define | REQUIRES_CONSTANT(a)
#define | REQUIRES_CONSTANT_MSG(a, m)
#define | REQUIRES_MSG(a, m)
#define | RUNTIME_ASSERT(e, m)
#define | RUNTIME_ASSERT_NO_ASSUME(e, m)
#define | STATIC_ASSERT_CONSTANT(e, m)
#define | STATIC_ASSERT_CONSTANT_EXPRESSION(e, m)
#define | STRINGIFY(a)
#define | STRINGIFY_(a)
#define | UNREACHABLE_MSG(m)

## Macro Definition Documentation

## ◆ __AIE_API_DETAIL_UTILS__HPP__

#define __AIE_API_DETAIL_UTILS__HPP__

## ◆ REQUIRES

#define REQUIRES | ( |  | a | ) |

Value:
REQUIRES_MSG(a, "Requirement " STRINGIFY(a) " not met")
STRINGIFY
#define STRINGIFY(a)
Definition detail/utils.hpp:673
REQUIRES_MSG
#define REQUIRES_MSG(a, m)
Definition detail/utils.hpp:686
aie_dm_resource::a
@ a
Memory access is bound to resource a.
Definition aie_doc.hpp:1380

## ◆ REQUIRES_CONSTANT

#define REQUIRES_CONSTANT | ( |  | a | ) |

## ◆ REQUIRES_CONSTANT_MSG

#define REQUIRES_CONSTANT_MSG | ( |  | a,
|  |  | m )

## ◆ REQUIRES_MSG

#define REQUIRES_MSG | ( |  | a,
|  |  | m )

Value:
RUNTIME_ASSERT(a, m)
RUNTIME_ASSERT
#define RUNTIME_ASSERT(e, m)
Definition detail/utils.hpp:682

## ◆ RUNTIME_ASSERT

#define RUNTIME_ASSERT | ( |  | e,
|  |  | m )

Value:
assert(e && m)

## ◆ RUNTIME_ASSERT_NO_ASSUME

#define RUNTIME_ASSERT_NO_ASSUME | ( |  | e,
|  |  | m )

Value:
assert(e && m)

## ◆ STATIC_ASSERT_CONSTANT

#define STATIC_ASSERT_CONSTANT | ( |  | e,
|  |  | m )

## ◆ STATIC_ASSERT_CONSTANT_EXPRESSION

#define STATIC_ASSERT_CONSTANT_EXPRESSION | ( |  | e,
|  |  | m )

## ◆ STRINGIFY

#define STRINGIFY | ( |  | a | ) |

Value:
STRINGIFY_(a)
STRINGIFY_
#define STRINGIFY_(a)
Definition detail/utils.hpp:672

## ◆ STRINGIFY_

#define STRINGIFY_ | ( |  | a | ) |

Value:
#a

## ◆ UNREACHABLE_MSG

#define UNREACHABLE_MSG | ( |  | m | ) |

Value:
do { \
assert(false && "Unreachable; " m); \
__builtin_unreachable(); \
} while (0)