Halide
|
Go to the source code of this file.
Classes | |
struct | halide_pseudostack_slot_t |
Namespaces | |
Halide | |
This file defines the class FunctionDAG, which is our representation of a Halide pipeline, and contains methods to using Halide's bounds tools to query properties of it. | |
Halide::Runtime | |
Halide::Runtime::Internal | |
Macros | |
#define | WEAK __attribute__((weak)) |
#define | ALWAYS_INLINE inline __attribute__((always_inline)) |
#define | WEAK_INLINE __attribute__((weak, always_inline)) |
#define | STDOUT_FILENO 1 |
#define | STDERR_FILENO 2 |
#define | _halide_stringify(x) #x |
halide_abort_if_false() is a macro that calls halide_print if the supplied condition is false, then aborts. More... | |
#define | _halide_expand_and_stringify(x) _halide_stringify(x) |
#define | halide_abort_if_false(user_context, cond) |
#define | halide_debug_assert(user_context, cond) |
halide_debug_assert() is like halide_assert(), but only expands into a check when DEBUG_RUNTIME is defined. More... | |
Typedefs | |
typedef signed __INT64_TYPE__ | int64_t |
typedef unsigned __INT64_TYPE__ | uint64_t |
typedef signed __INT32_TYPE__ | int32_t |
typedef unsigned __INT32_TYPE__ | uint32_t |
typedef signed __INT16_TYPE__ | int16_t |
typedef unsigned __INT16_TYPE__ | uint16_t |
typedef signed __INT8_TYPE__ | int8_t |
typedef unsigned __INT8_TYPE__ | uint8_t |
typedef __SIZE_TYPE__ | size_t |
typedef __PTRDIFF_TYPE__ | ptrdiff_t |
typedef ptrdiff_t | ssize_t |
typedef __UINTPTR_TYPE__ | uintptr_t |
typedef __INTPTR_TYPE__ | intptr_t |
Functions | |
void * | halide_malloc (void *user_context, size_t x) |
void | halide_free (void *user_context, void *ptr) |
WEAK int64_t | halide_current_time_ns (void *user_context) |
WEAK void | halide_print (void *user_context, const char *msg) |
WEAK void | halide_error (void *user_context, const char *msg) |
char * | getenv (const char *) |
void | free (void *) |
void * | malloc (size_t) |
const char * | strstr (const char *, const char *) |
int | atoi (const char *) |
int | strcmp (const char *s, const char *t) |
int | strncmp (const char *s, const char *t, size_t n) |
size_t | strlen (const char *s) |
const char * | strchr (const char *s, int c) |
void * | memcpy (void *s1, const void *s2, size_t n) |
void * | memmove (void *dest, const void *src, size_t n) |
int | memcmp (const void *s1, const void *s2, size_t n) |
void * | memset (void *s, int val, size_t n) |
WEAK_INLINE void * | halide_fopen (const char *filename, const char *type) |
int | fileno (void *) |
int | fclose (void *) |
int | close (int) |
size_t | fwrite (const void *, size_t, size_t, void *) |
ssize_t | write (int fd, const void *buf, size_t bytes) |
int | remove (const char *pathname) |
int | ioctl (int fd, unsigned long request,...) |
char * | strncpy (char *dst, const char *src, size_t n) |
void | abort () |
WEAK char * | halide_string_to_string (char *dst, char *end, const char *arg) |
WEAK char * | halide_double_to_string (char *dst, char *end, double arg, int scientific) |
WEAK char * | halide_int64_to_string (char *dst, char *end, int64_t arg, int digits) |
WEAK char * | halide_uint64_to_string (char *dst, char *end, uint64_t arg, int digits) |
WEAK char * | halide_pointer_to_string (char *dst, char *end, const void *arg) |
WEAK char * | halide_buffer_to_string (char *dst, char *end, const halide_buffer_t *arg) |
WEAK char * | halide_type_to_string (char *dst, char *end, const halide_type_t *arg) |
WEAK void * | halide_get_symbol (const char *name) |
WEAK void * | halide_load_library (const char *name) |
WEAK void * | halide_get_library_symbol (void *lib, const char *name) |
WEAK int | halide_start_clock (void *user_context) |
WEAK void | halide_sleep_ms (void *user_context, int ms) |
WEAK void | halide_device_free_as_destructor (void *user_context, void *obj) |
WEAK void | halide_device_and_host_free_as_destructor (void *user_context, void *obj) |
WEAK void | halide_device_host_nop_free (void *user_context, void *obj) |
WEAK void | halide_profiler_stack_peak_update (void *user_context, void *pipeline_state, uint64_t *f_values) |
WEAK void | halide_profiler_memory_allocate (void *user_context, void *pipeline_state, int func_id, uint64_t incr) |
WEAK void | halide_profiler_memory_free (void *user_context, void *pipeline_state, int func_id, uint64_t decr) |
WEAK int | halide_profiler_pipeline_start (void *user_context, const char *pipeline_name, int num_funcs, const uint64_t *func_names) |
WEAK int | halide_host_cpu_count () |
WEAK int | halide_device_and_host_malloc (void *user_context, struct halide_buffer_t *buf, const struct halide_device_interface_t *device_interface) |
WEAK int | halide_device_and_host_free (void *user_context, struct halide_buffer_t *buf) |
WEAK int | halide_trace_helper (void *user_context, const char *func, void *value, int *coords, int type_code, int type_bits, int type_lanes, int code, int parent_id, int value_index, int dimensions, const char *trace_tag) |
WEAK void | halide_use_jit_module () |
WEAK void | halide_release_jit_module () |
WEAK_INLINE int | halide_internal_malloc_alignment () |
WEAK_INLINE void * | halide_internal_aligned_alloc (size_t alignment, size_t size) |
WEAK_INLINE void | halide_internal_aligned_free (void *ptr) |
void | halide_thread_yield () |
template<typename T > | |
ALWAYS_INLINE T | align_up (T p, size_t alignment) |
template<typename T > | |
ALWAYS_INLINE T | is_power_of_two (T value) |
Variables | |
WEAK void(*)(void *, const char *) | halide_set_custom_print (void(*print)(void *, const char *)) |
WEAK void(*)(void *, const char *) | halide_set_error_handler (void(*handler)(void *, const char *)) |
#define WEAK __attribute__((weak)) |
Definition at line 52 of file runtime_internal.h.
#define ALWAYS_INLINE inline __attribute__((always_inline)) |
Definition at line 55 of file runtime_internal.h.
#define WEAK_INLINE __attribute__((weak, always_inline)) |
Definition at line 58 of file runtime_internal.h.
#define STDOUT_FILENO 1 |
Definition at line 79 of file runtime_internal.h.
#define STDERR_FILENO 2 |
Definition at line 80 of file runtime_internal.h.
#define _halide_stringify | ( | x | ) | #x |
halide_abort_if_false() is a macro that calls halide_print if the supplied condition is false, then aborts.
Used for unrecoverable errors, or should-never-happen errors.
Note that this is NOT a debug-only macro; the condition will be checked in all build modes!
Definition at line 260 of file runtime_internal.h.
#define _halide_expand_and_stringify | ( | x | ) | _halide_stringify(x) |
Definition at line 261 of file runtime_internal.h.
#define halide_abort_if_false | ( | user_context, | |
cond | |||
) |
Definition at line 262 of file runtime_internal.h.
#define halide_debug_assert | ( | user_context, | |
cond | |||
) |
halide_debug_assert() is like halide_assert(), but only expands into a check when DEBUG_RUNTIME is defined.
It is what you want to use in almost all cases.
Definition at line 281 of file runtime_internal.h.
typedef signed __INT64_TYPE__ int64_t |
Definition at line 22 of file runtime_internal.h.
typedef unsigned __INT64_TYPE__ uint64_t |
Definition at line 23 of file runtime_internal.h.
typedef signed __INT32_TYPE__ int32_t |
Definition at line 24 of file runtime_internal.h.
typedef unsigned __INT32_TYPE__ uint32_t |
Definition at line 25 of file runtime_internal.h.
typedef signed __INT16_TYPE__ int16_t |
Definition at line 26 of file runtime_internal.h.
typedef unsigned __INT16_TYPE__ uint16_t |
Definition at line 27 of file runtime_internal.h.
typedef signed __INT8_TYPE__ int8_t |
Definition at line 28 of file runtime_internal.h.
typedef unsigned __INT8_TYPE__ uint8_t |
Definition at line 29 of file runtime_internal.h.
typedef __SIZE_TYPE__ size_t |
Definition at line 31 of file runtime_internal.h.
typedef __PTRDIFF_TYPE__ ptrdiff_t |
Definition at line 32 of file runtime_internal.h.
Definition at line 34 of file runtime_internal.h.
typedef __UINTPTR_TYPE__ uintptr_t |
Definition at line 73 of file runtime_internal.h.
typedef __INTPTR_TYPE__ intptr_t |
Definition at line 74 of file runtime_internal.h.
void* halide_malloc | ( | void * | user_context, |
size_t | x | ||
) |
void halide_free | ( | void * | user_context, |
void * | ptr | ||
) |
WEAK void halide_print | ( | void * | user_context, |
const char * | msg | ||
) |
WEAK void halide_error | ( | void * | user_context, |
const char * | msg | ||
) |
char* getenv | ( | const char * | ) |
Referenced by Halide::Runtime::Internal::default_desired_num_threads().
void free | ( | void * | ) |
void* malloc | ( | size_t | ) |
const char* strstr | ( | const char * | , |
const char * | |||
) |
int atoi | ( | const char * | ) |
int strcmp | ( | const char * | s, |
const char * | t | ||
) |
int strncmp | ( | const char * | s, |
const char * | t, | ||
size_t | n | ||
) |
Referenced by Halide::Runtime::Internal::StringStorage::operator==(), and cmdline::parser::parse().
size_t strlen | ( | const char * | s | ) |
const char* strchr | ( | const char * | s, |
int | c | ||
) |
Referenced by cmdline::parser::parse().
void* memcpy | ( | void * | s1, |
const void * | s2, | ||
size_t | n | ||
) |
Referenced by Halide::Runtime::Internal::BlockStorage::BlockStorage(), Halide::Runtime::Internal::copy_memory_helper(), Halide::Internal::Autoscheduler::BoundContents::make_copy(), Halide::Runtime::Internal::PointerTable::operator=(), Halide::Runtime::Internal::BlockStorage::operator=(), Halide::Runtime::Internal::PointerTable::PointerTable(), and Halide::Internal::Parameter::set_scalar().
void* memmove | ( | void * | dest, |
const void * | src, | ||
size_t | n | ||
) |
int memcmp | ( | const void * | s1, |
const void * | s2, | ||
size_t | n | ||
) |
void* memset | ( | void * | s, |
int | val, | ||
size_t | n | ||
) |
Referenced by halide_mutex_array_create(), and Halide::Runtime::Internal::work_queue_t::reset().
WEAK_INLINE void* halide_fopen | ( | const char * | filename, |
const char * | type | ||
) |
int fileno | ( | void * | ) |
int fclose | ( | void * | ) |
int close | ( | int | ) |
int remove | ( | const char * | pathname | ) |
int ioctl | ( | int | fd, |
unsigned long | request, | ||
... | |||
) |
char* strncpy | ( | char * | dst, |
const char * | src, | ||
size_t | n | ||
) |
void abort | ( | ) |
WEAK char* halide_string_to_string | ( | char * | dst, |
char * | end, | ||
const char * | arg | ||
) |
WEAK char* halide_double_to_string | ( | char * | dst, |
char * | end, | ||
double | arg, | ||
int | scientific | ||
) |
WEAK char* halide_pointer_to_string | ( | char * | dst, |
char * | end, | ||
const void * | arg | ||
) |
WEAK char* halide_buffer_to_string | ( | char * | dst, |
char * | end, | ||
const halide_buffer_t * | arg | ||
) |
WEAK char* halide_type_to_string | ( | char * | dst, |
char * | end, | ||
const halide_type_t * | arg | ||
) |
WEAK void* halide_get_symbol | ( | const char * | name | ) |
WEAK void* halide_load_library | ( | const char * | name | ) |
WEAK void* halide_get_library_symbol | ( | void * | lib, |
const char * | name | ||
) |
WEAK int halide_start_clock | ( | void * | user_context | ) |
WEAK void halide_sleep_ms | ( | void * | user_context, |
int | ms | ||
) |
WEAK void halide_device_free_as_destructor | ( | void * | user_context, |
void * | obj | ||
) |
WEAK void halide_device_and_host_free_as_destructor | ( | void * | user_context, |
void * | obj | ||
) |
WEAK void halide_device_host_nop_free | ( | void * | user_context, |
void * | obj | ||
) |
WEAK void halide_profiler_stack_peak_update | ( | void * | user_context, |
void * | pipeline_state, | ||
uint64_t * | f_values | ||
) |
WEAK void halide_profiler_memory_allocate | ( | void * | user_context, |
void * | pipeline_state, | ||
int | func_id, | ||
uint64_t | incr | ||
) |
WEAK void halide_profiler_memory_free | ( | void * | user_context, |
void * | pipeline_state, | ||
int | func_id, | ||
uint64_t | decr | ||
) |
WEAK int halide_profiler_pipeline_start | ( | void * | user_context, |
const char * | pipeline_name, | ||
int | num_funcs, | ||
const uint64_t * | func_names | ||
) |
WEAK int halide_host_cpu_count | ( | ) |
Referenced by Halide::Runtime::Internal::default_desired_num_threads().
WEAK int halide_device_and_host_malloc | ( | void * | user_context, |
struct halide_buffer_t * | buf, | ||
const struct halide_device_interface_t * | device_interface | ||
) |
WEAK int halide_device_and_host_free | ( | void * | user_context, |
struct halide_buffer_t * | buf | ||
) |
WEAK int halide_trace_helper | ( | void * | user_context, |
const char * | func, | ||
void * | value, | ||
int * | coords, | ||
int | type_code, | ||
int | type_bits, | ||
int | type_lanes, | ||
int | code, | ||
int | parent_id, | ||
int | value_index, | ||
int | dimensions, | ||
const char * | trace_tag | ||
) |
WEAK void halide_use_jit_module | ( | ) |
WEAK void halide_release_jit_module | ( | ) |
WEAK_INLINE int halide_internal_malloc_alignment | ( | ) |
WEAK_INLINE void* halide_internal_aligned_alloc | ( | size_t | alignment, |
size_t | size | ||
) |
WEAK_INLINE void halide_internal_aligned_free | ( | void * | ptr | ) |
void halide_thread_yield | ( | ) |
Referenced by Halide::Runtime::Internal::worker_thread_already_locked().
ALWAYS_INLINE T align_up | ( | T | p, |
size_t | alignment | ||
) |
Definition at line 212 of file runtime_internal.h.
Referenced by Halide::Runtime::Buffer< double * >::allocate().
ALWAYS_INLINE T is_power_of_two | ( | T | value | ) |
Definition at line 217 of file runtime_internal.h.
WEAK void(*)(void *, const char *) halide_set_custom_print(void(*print)(void *, const char *)) |
Definition at line 89 of file runtime_internal.h.
WEAK void(*)(void *, const char *) halide_set_error_handler(void(*handler)(void *, const char *)) |
Definition at line 90 of file runtime_internal.h.