#ifndef DOJIT_H
#define DOJIT_H

static inline long erfi1(struct ejit_func *f, struct ejit_arg a0)
{
	return ejit_run_func_i(f, 1, &a0);
}

static inline long erfi2(struct ejit_func *f, struct ejit_arg a0, struct ejit_arg a1)
{
	struct ejit_arg args[2] = {a0, a1};
	return ejit_run_func_i(f, 2, args);
}

static inline int64_t erfl1(struct ejit_func *f, struct ejit_arg a0)
{
	return ejit_run_func_l(f, 1, &a0);
}

static inline int64_t erfl2(struct ejit_func *f, struct ejit_arg a0, struct ejit_arg a1)
{
	struct ejit_arg args[2] = {a0, a1};
	return ejit_run_func_l(f, 2, args);
}

static inline float erff1(struct ejit_func *f, struct ejit_arg a0)
{
	return ejit_run_func_f(f, 1, &a0);
}

static inline float erff2(struct ejit_func *f, struct ejit_arg a0, struct ejit_arg a1)
{
	struct ejit_arg args[2] = {a0, a1};
	return ejit_run_func_f(f, 2, args);
}

static inline double erfd1(struct ejit_func *f, struct ejit_arg a0)
{
	return ejit_run_func_d(f, 1, &a0);
}

static inline double erfd2(struct ejit_func *f, struct ejit_arg a0, struct ejit_arg a1)
{
	struct ejit_arg args[2] = {a0, a1};
	return ejit_run_func_d(f, 2, args);
}

#endif /* DOJIT_H */