Tiramisu Compiler
|
#include <isl/id.h>
#include <tiramisu/type.h>
#include <string>
#include <vector>
#include "utils.h"
Go to the source code of this file.
Namespaces | |
tiramisu | |
tiramisu::cuda_ast | |
Macros | |
#define | NVCC_PATH "nvcc" |
#define | UNARY(op, x) {op, op_data_t{true, 1, (x)}} |
#define | UNARY_TYPED(op, x, T) {op, op_data_t{true, 2, (x), (T)}} |
#define | BINARY(op, x) {op, op_data_t{true, 2, (x)}} |
#define | BINARY_TYPED(op, x, T) {op, op_data_t{true, 2, (x), (T)}} |
#define | TERNARY(op, x, y) {op, op_data_t{true, 3, (x), (y)}} |
#define | TERNARY_TYPED(op, x, y, T) {op, op_data_t{true, 3, (x), (y), (T)}} |
#define | FN_CALL(op, x, n) {op, op_data_t{false, (n), (x)}} |
#define | FN_CALL_TYPED(op, x, n, T) {op, op_data_t{false, (n), (x), (T)}} |
#define | UNARY2(op, x) case op: return tiramisu::cuda_ast::op_data_t{true, 1, (x)}; |
#define | UNARY_TYPED2(op, x, T) case op: return tiramisu::cuda_ast::op_data_t{true, 2, (x), (T)}; |
#define | BINARY2(op, x) case op: return tiramisu::cuda_ast::op_data_t{true, 2, (x)}; |
#define | BINARY_TYPED2(op, x, T) case op: return tiramisu::cuda_ast::op_data_t{true, 2, (x), (T)}; |
#define | TERNARY2(op, x, y) case op: return tiramisu::cuda_ast::op_data_t{true, 3, (x), (y)}; |
#define | TERNARY_TYPED2(op, x, y, T) case op: return tiramisu::cuda_ast::op_data_t{true, 3, (x), (y), (T)}; |
#define | FN_CALL2(op, x, n) case op: return tiramisu::cuda_ast::op_data_t{false, (n), (x)}; |
#define | FN_CALL_TYPED2(op, x, n, T) case op: return tiramisu::cuda_ast::op_data_t{false, (n), (x), (T)}; |
Typedefs | |
typedef std::unique_ptr< isl_ast_expr, isl_ast_expr_deleter > | tiramisu::isl_ast_expr_ptr |
typedef std::unique_ptr< isl_id, isl_id_deleter > | tiramisu::isl_id_ptr |
typedef std::unique_ptr< isl_ast_node_list, isl_ast_node_list_deleter > | tiramisu::isl_ast_node_list_ptr |
typedef std::unique_ptr< isl_val, isl_val_deleter > | tiramisu::isl_val_ptr |
typedef std::shared_ptr< statement > | tiramisu::cuda_ast::statement_ptr |
typedef std::shared_ptr< abstract_identifier > | tiramisu::cuda_ast::abstract_identifier_ptr |
typedef std::shared_ptr< buffer > | tiramisu::cuda_ast::buffer_ptr |
typedef std::shared_ptr< scalar > | tiramisu::cuda_ast::scalar_ptr |
typedef std::shared_ptr< value > | tiramisu::cuda_ast::value_ptr |
typedef std::shared_ptr< assignment > | tiramisu::cuda_ast::assignment_ptr |
typedef std::unordered_map< std::string, std::pair< tiramisu::primitive_t, cuda_ast::memory_location > > | tiramisu::cuda_ast::scalar_data_t |
typedef std::shared_ptr< kernel > | tiramisu::cuda_ast::kernel_ptr |
Enumerations |
Functions | |
const op_data_t | tiramisu::cuda_ast::tiramisu_operation_description (tiramisu::op_t op) |
const op_data_t | tiramisu::cuda_ast::isl_operation_description (isl_ast_op_type op) |
const std::string | tiramisu::cuda_ast::tiramisu_type_to_cuda_type (tiramisu::primitive_t t) |
#define BINARY | ( | op, | |
x | |||
) | {op, op_data_t{true, 2, (x)}} |
Definition at line 14 of file cuda_ast.h.
#define BINARY2 | ( | op, | |
x | |||
) | case op: return tiramisu::cuda_ast::op_data_t{true, 2, (x)}; |
Definition at line 23 of file cuda_ast.h.
#define BINARY_TYPED | ( | op, | |
x, | |||
T | |||
) | {op, op_data_t{true, 2, (x), (T)}} |
Definition at line 15 of file cuda_ast.h.
#define BINARY_TYPED2 | ( | op, | |
x, | |||
T | |||
) | case op: return tiramisu::cuda_ast::op_data_t{true, 2, (x), (T)}; |
Definition at line 24 of file cuda_ast.h.
#define FN_CALL | ( | op, | |
x, | |||
n | |||
) | {op, op_data_t{false, (n), (x)}} |
Definition at line 18 of file cuda_ast.h.
#define FN_CALL2 | ( | op, | |
x, | |||
n | |||
) | case op: return tiramisu::cuda_ast::op_data_t{false, (n), (x)}; |
Definition at line 27 of file cuda_ast.h.
#define FN_CALL_TYPED | ( | op, | |
x, | |||
n, | |||
T | |||
) | {op, op_data_t{false, (n), (x), (T)}} |
Definition at line 19 of file cuda_ast.h.
#define FN_CALL_TYPED2 | ( | op, | |
x, | |||
n, | |||
T | |||
) | case op: return tiramisu::cuda_ast::op_data_t{false, (n), (x), (T)}; |
Definition at line 28 of file cuda_ast.h.
#define NVCC_PATH "nvcc" |
Definition at line 9 of file cuda_ast.h.
#define TERNARY | ( | op, | |
x, | |||
y | |||
) | {op, op_data_t{true, 3, (x), (y)}} |
Definition at line 16 of file cuda_ast.h.
#define TERNARY2 | ( | op, | |
x, | |||
y | |||
) | case op: return tiramisu::cuda_ast::op_data_t{true, 3, (x), (y)}; |
Definition at line 25 of file cuda_ast.h.
#define TERNARY_TYPED | ( | op, | |
x, | |||
y, | |||
T | |||
) | {op, op_data_t{true, 3, (x), (y), (T)}} |
Definition at line 17 of file cuda_ast.h.
#define TERNARY_TYPED2 | ( | op, | |
x, | |||
y, | |||
T | |||
) | case op: return tiramisu::cuda_ast::op_data_t{true, 3, (x), (y), (T)}; |
Definition at line 26 of file cuda_ast.h.
#define UNARY | ( | op, | |
x | |||
) | {op, op_data_t{true, 1, (x)}} |
Definition at line 12 of file cuda_ast.h.
#define UNARY2 | ( | op, | |
x | |||
) | case op: return tiramisu::cuda_ast::op_data_t{true, 1, (x)}; |
Definition at line 21 of file cuda_ast.h.
#define UNARY_TYPED | ( | op, | |
x, | |||
T | |||
) | {op, op_data_t{true, 2, (x), (T)}} |
Definition at line 13 of file cuda_ast.h.
#define UNARY_TYPED2 | ( | op, | |
x, | |||
T | |||
) | case op: return tiramisu::cuda_ast::op_data_t{true, 2, (x), (T)}; |
Definition at line 22 of file cuda_ast.h.
bool exec_succeeded |
Definition at line 704 of file cuda_ast.h.
int result |
Definition at line 705 of file cuda_ast.h.
Referenced by compare_4D_buffers(), compare_buffers(), compare_buffers_approximately(), compare_dist_buffers(), tiramisu::expr::get_double_val(), tiramisu::expr::get_int_val(), and store_dist_results().
std::string std_err |
Definition at line 707 of file cuda_ast.h.
std::string std_out |
Definition at line 706 of file cuda_ast.h.