Blame isl-0.14/include/isl/ast_type.h

Packit fb9d21
#ifndef ISL_AST_TYPE_H
Packit fb9d21
#define ISL_AST_TYPE_H
Packit fb9d21
Packit fb9d21
#include <isl/list.h>
Packit fb9d21
Packit fb9d21
#if defined(__cplusplus)
Packit fb9d21
extern "C" {
Packit fb9d21
#endif
Packit fb9d21
Packit fb9d21
struct isl_ast_expr;
Packit fb9d21
typedef struct isl_ast_expr isl_ast_expr;
Packit fb9d21
Packit fb9d21
struct isl_ast_node;
Packit fb9d21
typedef struct isl_ast_node isl_ast_node;
Packit fb9d21
Packit fb9d21
enum isl_ast_op_type {
Packit fb9d21
	isl_ast_op_error = -1,
Packit fb9d21
	isl_ast_op_and,
Packit fb9d21
	isl_ast_op_and_then,
Packit fb9d21
	isl_ast_op_or,
Packit fb9d21
	isl_ast_op_or_else,
Packit fb9d21
	isl_ast_op_max,
Packit fb9d21
	isl_ast_op_min,
Packit fb9d21
	isl_ast_op_minus,
Packit fb9d21
	isl_ast_op_add,
Packit fb9d21
	isl_ast_op_sub,
Packit fb9d21
	isl_ast_op_mul,
Packit fb9d21
	isl_ast_op_div,
Packit fb9d21
	isl_ast_op_fdiv_q,	/* Round towards -infty */
Packit fb9d21
	isl_ast_op_pdiv_q,	/* Dividend is non-negative */
Packit fb9d21
	isl_ast_op_pdiv_r,	/* Dividend is non-negative */
Packit fb9d21
	isl_ast_op_cond,
Packit fb9d21
	isl_ast_op_select,
Packit fb9d21
	isl_ast_op_eq,
Packit fb9d21
	isl_ast_op_le,
Packit fb9d21
	isl_ast_op_lt,
Packit fb9d21
	isl_ast_op_ge,
Packit fb9d21
	isl_ast_op_gt,
Packit fb9d21
	isl_ast_op_call,
Packit fb9d21
	isl_ast_op_access,
Packit fb9d21
	isl_ast_op_member,
Packit fb9d21
	isl_ast_op_address_of
Packit fb9d21
};
Packit fb9d21
Packit fb9d21
enum isl_ast_expr_type {
Packit fb9d21
	isl_ast_expr_error = -1,
Packit fb9d21
	isl_ast_expr_op,
Packit fb9d21
	isl_ast_expr_id,
Packit fb9d21
	isl_ast_expr_int
Packit fb9d21
};
Packit fb9d21
Packit fb9d21
enum isl_ast_node_type {
Packit fb9d21
	isl_ast_node_error = -1,
Packit fb9d21
	isl_ast_node_for = 1,
Packit fb9d21
	isl_ast_node_if,
Packit fb9d21
	isl_ast_node_block,
Packit fb9d21
	isl_ast_node_user
Packit fb9d21
};
Packit fb9d21
Packit fb9d21
struct isl_ast_print_options;
Packit fb9d21
typedef struct isl_ast_print_options isl_ast_print_options;
Packit fb9d21
Packit fb9d21
ISL_DECLARE_LIST(ast_expr)
Packit fb9d21
ISL_DECLARE_LIST(ast_node)
Packit fb9d21
Packit fb9d21
#if defined(__cplusplus)
Packit fb9d21
}
Packit fb9d21
#endif
Packit fb9d21
Packit fb9d21
#endif