1f08c3bdfSopenharmony_ci#ifndef _BUILTIN_H_ 2f08c3bdfSopenharmony_ci#define _BUILTIN_H_ 3f08c3bdfSopenharmony_ci 4f08c3bdfSopenharmony_ci#include "symbol.h" 5f08c3bdfSopenharmony_ci 6f08c3bdfSopenharmony_cistruct builtin_fn { 7f08c3bdfSopenharmony_ci const char *name; 8f08c3bdfSopenharmony_ci struct symbol *ret_type; 9f08c3bdfSopenharmony_ci unsigned int variadic:1; 10f08c3bdfSopenharmony_ci struct symbol *args[6]; 11f08c3bdfSopenharmony_ci struct symbol *_args_null_tail; 12f08c3bdfSopenharmony_ci struct symbol_op *op; 13f08c3bdfSopenharmony_ci}; 14f08c3bdfSopenharmony_ci 15f08c3bdfSopenharmony_civoid declare_builtins(int stream, const struct builtin_fn tbl[]); 16f08c3bdfSopenharmony_ci 17f08c3bdfSopenharmony_ciextern struct symbol_op generic_int_op; 18f08c3bdfSopenharmony_ci 19f08c3bdfSopenharmony_ci#endif 20