#include "config.h"#include "system.h"#include "tree.h"#include "ggc.h"#include "flags.h"#include "java-tree.h"#include "builtin-types.def"#include "builtins.def"

Go to the source code of this file.
Data Types | |
| union | string_or_tree |
| type | builtin_record |
Defines | |
| #define | DEF_PRIMITIVE_TYPE(NAME, VALUE) NAME, |
| #define | DEF_FUNCTION_TYPE_0(NAME, RETURN) NAME, |
| #define | DEF_FUNCTION_TYPE_1(NAME, RETURN, ARG1) NAME, |
| #define | DEF_FUNCTION_TYPE_2(NAME, RETURN, ARG1, ARG2) NAME, |
| #define | DEF_FUNCTION_TYPE_3(NAME, RETURN, ARG1, ARG2, ARG3) NAME, |
| #define | DEF_FUNCTION_TYPE_4(NAME, RETURN, ARG1, ARG2, ARG3, ARG4) NAME, |
| #define | DEF_FUNCTION_TYPE_VAR_0(NAME, RETURN) NAME, |
| #define | DEF_FUNCTION_TYPE_VAR_1(NAME, RETURN, ARG1) NAME, |
| #define | DEF_FUNCTION_TYPE_VAR_2(NAME, RETURN, ARG1, ARG2) NAME, |
| #define | DEF_POINTER_TYPE(NAME, TYPE) NAME, |
| #define | intmax_type_node NULL_TREE |
| #define | traditional_ptr_type_node NULL_TREE |
| #define | traditional_cptr_type_node NULL_TREE |
| #define | c_size_type_node NULL_TREE |
| #define | const_string_type_node NULL_TREE |
| #define | traditional_len_type_node NULL_TREE |
| #define | va_list_ref_type_node NULL_TREE |
| #define | va_list_arg_type_node NULL_TREE |
| #define | flag_isoc99 0 |
| #define | DEF_PRIMITIVE_TYPE(ENUM, VALUE) builtin_types[(int) ENUM] = VALUE; |
| #define | DEF_FUNCTION_TYPE_0(ENUM, RETURN) |
| #define | DEF_FUNCTION_TYPE_1(ENUM, RETURN, ARG1) |
| #define | DEF_FUNCTION_TYPE_2(ENUM, RETURN, ARG1, ARG2) |
| #define | DEF_FUNCTION_TYPE_3(ENUM, RETURN, ARG1, ARG2, ARG3) |
| #define | DEF_FUNCTION_TYPE_4(ENUM, RETURN, ARG1, ARG2, ARG3, ARG4) |
| #define | DEF_FUNCTION_TYPE_VAR_0(ENUM, RETURN) builtin_types[(int) ENUM] = NULL_TREE; |
| #define | DEF_FUNCTION_TYPE_VAR_1(ENUM, RETURN, ARG1) builtin_types[(int) ENUM] = NULL_TREE; |
| #define | DEF_FUNCTION_TYPE_VAR_2(ENUM, RETURN, ARG1, ARG2) builtin_types[(int) ENUM] = NULL_TREE; |
| #define | DEF_POINTER_TYPE(ENUM, TYPE) builtin_types[(int) ENUM] = NULL_TREE; |
| #define | DEF_BUILTIN(ENUM, NAME, CLASS, TYPE, LIBTYPE, BOTH_P, FALLBACK_P, NONANSI_P) define_builtin (ENUM, NAME, CLASS, builtin_types[TYPE], FALLBACK_P); |
Typedefs | |
| typedef tree builtin_creator_function | PARAMS ((tree, tree)) |
Enumerations | |
| enum | builtin_type { BT_SPECLINE = 0, BT_DATE, BT_FILE, BT_BASE_FILE, BT_INCLUDE_LEVEL, BT_TIME, BT_STDC, BT_PRAGMA, BT_SPECLINE = 0, BT_DATE, BT_FILE, BT_BASE_FILE, BT_INCLUDE_LEVEL, BT_TIME, BT_STDC, BT_PRAGMA, DEF_PRIMITIVE_TYPE, BT_SPECLINE = 0, BT_DATE, BT_FILE, BT_BASE_FILE, BT_INCLUDE_LEVEL, BT_TIME, BT_STDC, BT_PRAGMA, BT_SPECLINE = 0, BT_DATE, BT_FILE, BT_BASE_FILE, BT_INCLUDE_LEVEL, BT_TIME, BT_STDC, BT_PRAGMA, BT_TIMESTAMP } |
Functions/Subroutines | |
| static tree max_builtin | PARAMS ((tree, tree)) |
| static void define_builtin | PARAMS ((enum built_in_function, const char *, enum built_in_class, tree, int)) |
| static tree define_builtin_type | PARAMS ((int, int, int, int, int)) |
| static tree | max_builtin (tree method_return_type, tree method_arguments) |
| static tree | min_builtin (tree method_return_type, tree method_arguments) |
| static tree | abs_builtin (tree method_return_type, tree method_arguments) |
| static tree | build_function_call_expr (tree fn, tree arglist) |
| static tree | cos_builtin (method_return_type, tree method_return_type method_arguments) |
| static tree | sin_builtin (method_return_type, tree method_return_type method_arguments) |
| static tree | sqrt_builtin (method_return_type, tree method_return_type method_arguments) |
| static void | define_builtin (enum built_in_function val, const char *name, enum built_in_class class, tree type, int fallback_p) |
| static tree | define_builtin_type (int ret, int arg1, int arg2, int arg3, int arg4) |
| void | initialize_builtins () |
| tree | check_for_builtin (tree method, tree call) |
Variables | |
| static struct builtin_record | java_builtins [] |
| static tree | builtin_types [(int) BT_LAST] |
| #define c_size_type_node NULL_TREE |
| #define const_string_type_node NULL_TREE |
| #define DEF_BUILTIN | ( | ENUM, | |||
| NAME, | |||||
| CLASS, | |||||
| TYPE, | |||||
| LIBTYPE, | |||||
| BOTH_P, | |||||
| FALLBACK_P, | |||||
| NONANSI_P | ) | define_builtin (ENUM, NAME, CLASS, builtin_types[TYPE], FALLBACK_P); |
| #define DEF_FUNCTION_TYPE_0 | ( | ENUM, | |||
| RETURN | ) |
Value:
builtin_types[(int) ENUM] \ = define_builtin_type (RETURN, -1, -1, -1, -1);
| #define DEF_FUNCTION_TYPE_0 | ( | NAME, | |||
| RETURN | ) | NAME, |
| #define DEF_FUNCTION_TYPE_1 | ( | ENUM, | |||
| RETURN, | |||||
| ARG1 | ) |
Value:
builtin_types[(int) ENUM] \ = define_builtin_type (RETURN, ARG1, -1, -1, -1);
| #define DEF_FUNCTION_TYPE_1 | ( | NAME, | |||
| RETURN, | |||||
| ARG1 | ) | NAME, |
| #define DEF_FUNCTION_TYPE_2 | ( | ENUM, | |||
| RETURN, | |||||
| ARG1, | |||||
| ARG2 | ) |
Value:
builtin_types[(int) ENUM] \ = define_builtin_type (RETURN, ARG1, ARG2, -1, -1);
| #define DEF_FUNCTION_TYPE_2 | ( | NAME, | |||
| RETURN, | |||||
| ARG1, | |||||
| ARG2 | ) | NAME, |
| #define DEF_FUNCTION_TYPE_3 | ( | ENUM, | |||
| RETURN, | |||||
| ARG1, | |||||
| ARG2, | |||||
| ARG3 | ) |
Value:
builtin_types[(int) ENUM] \ = define_builtin_type (RETURN, ARG1, ARG2, ARG3, -1);
| #define DEF_FUNCTION_TYPE_3 | ( | NAME, | |||
| RETURN, | |||||
| ARG1, | |||||
| ARG2, | |||||
| ARG3 | ) | NAME, |
| #define DEF_FUNCTION_TYPE_4 | ( | ENUM, | |||
| RETURN, | |||||
| ARG1, | |||||
| ARG2, | |||||
| ARG3, | |||||
| ARG4 | ) |
Value:
builtin_types[(int) ENUM] \ = define_builtin_type (RETURN, ARG1, ARG2, ARG3, ARG4);
| #define DEF_FUNCTION_TYPE_4 | ( | NAME, | |||
| RETURN, | |||||
| ARG1, | |||||
| ARG2, | |||||
| ARG3, | |||||
| ARG4 | ) | NAME, |
| #define DEF_FUNCTION_TYPE_VAR_0 | ( | ENUM, | |||
| RETURN | ) | builtin_types[(int) ENUM] = NULL_TREE; |
| #define DEF_FUNCTION_TYPE_VAR_0 | ( | NAME, | |||
| RETURN | ) | NAME, |
| #define DEF_FUNCTION_TYPE_VAR_1 | ( | ENUM, | |||
| RETURN, | |||||
| ARG1 | ) | builtin_types[(int) ENUM] = NULL_TREE; |
| #define DEF_FUNCTION_TYPE_VAR_1 | ( | NAME, | |||
| RETURN, | |||||
| ARG1 | ) | NAME, |
| #define DEF_FUNCTION_TYPE_VAR_2 | ( | ENUM, | |||
| RETURN, | |||||
| ARG1, | |||||
| ARG2 | ) | builtin_types[(int) ENUM] = NULL_TREE; |
| #define DEF_FUNCTION_TYPE_VAR_2 | ( | NAME, | |||
| RETURN, | |||||
| ARG1, | |||||
| ARG2 | ) | NAME, |
| #define DEF_POINTER_TYPE | ( | ENUM, | |||
| TYPE | ) | builtin_types[(int) ENUM] = NULL_TREE; |
| #define DEF_POINTER_TYPE | ( | NAME, | |||
| TYPE | ) | NAME, |
| #define DEF_PRIMITIVE_TYPE | ( | ENUM, | |||
| VALUE | ) | builtin_types[(int) ENUM] = VALUE; |
| #define DEF_PRIMITIVE_TYPE | ( | NAME, | |||
| VALUE | ) | NAME, |
| #define flag_isoc99 0 |
Referenced by build_array_declarator(), build_array_ref(), c_common_post_options(), c_expand_expr_stmt(), c_expand_return(), c_finish_return(), c_objc_common_init(), c_parse_init(), c_parser_c99_block_statement(), c_parser_compound_statement_nostart(), c_parser_do_statement(), c_parser_enum_specifier(), c_parser_for_statement(), c_parser_if_body(), c_parser_if_statement(), c_parser_initelt(), c_parser_postfix_expression_after_paren_type(), c_parser_switch_statement(), c_parser_while_statement(), c_process_expr_stmt(), check_for_loop_decls(), check_format_info_main(), declspecs_add_qual(), declspecs_add_type(), default_function_array_conversion(), digest_init(), finish_function(), fix_string_type(), grokdeclarator(), GTY(), interpret_integer(), output_init_element(), pedwarn_c90(), pedwarn_c99(), pp_c_bool_constant(), pp_c_bool_literal(), pp_c_cv_qualifier(), pp_c_postfix_expression(), pp_c_simple_type_specifier(), pp_c_specifier_qualifier_list(), pp_c_type_qualifier_list(), process_init_element(), sanitize_cpp_opts(), set_std_c89(), set_std_c99(), start_function(), start_init(), store_parm_decls(), store_parm_decls_oldstyle(), tagged_types_tu_compatible_p(), and VPARAMS().
| #define intmax_type_node NULL_TREE |
| #define traditional_cptr_type_node NULL_TREE |
| #define traditional_len_type_node NULL_TREE |
| #define traditional_ptr_type_node NULL_TREE |
| #define va_list_arg_type_node NULL_TREE |
Referenced by c_common_nodes_and_builtins(), and GTY().
| #define va_list_ref_type_node NULL_TREE |
Referenced by c_common_nodes_and_builtins(), and GTY().
Definition at line 82 of file builtins.c.
| enum builtin_type |
Definition at line 36 of file builtins.c.
Definition at line 146 of file builtins.c.
References build(), build1, build_pointer_type(), TREE_SIDE_EFFECTS, and TREE_TYPE.
Definition at line 330 of file builtins.c.
References builtin_record::class_name, builtin_record::creator, DECL_CONTEXT, DECL_NAME, flag_emit_class_files, i, builtin_record::method_name, NULL, optimize, string_or_tree::t, TREE_CODE, TREE_OPERAND, TREE_TYPE, and TYPE_NAME.
Referenced by expand_invoke().
Definition at line 158 of file builtins.c.
References build_function_call_expr(), built_in_decls, and NULL_TREE.
| static void define_builtin | ( | enum built_in_function | val, | |
| const char * | name, | |||
| enum built_in_class | class, | |||
| tree | type, | |||
| int | fallback_p | |||
| ) | [static] |
Definition at line 194 of file builtins.c.
References abort, build_decl, built_in_decls, DECL_BUILT_IN_CLASS, DECL_EXTERNAL, DECL_FUNCTION_CODE, get_identifier(), make_decl_rtl(), NULL, pushdecl(), SET_DECL_ASSEMBLER_NAME, strlen(), strncmp(), and TREE_PUBLIC.
| static tree define_builtin_type | ( | int | ret, | |
| int | arg1, | |||
| int | arg2, | |||
| int | arg3, | |||
| int | arg4 | |||
| ) | [static] |
Definition at line 223 of file builtins.c.
References args, build_function_type(), builtin_types, NULL_TREE, tree_cons, and void_list_node.
| void initialize_builtins | ( | ) |
Definition at line 265 of file builtins.c.
References builtin_record::class_name, builtin_record::creator, end_params_node, get_identifier(), i, builtin_record::method_name, NULL, string_or_tree::s, string_or_tree::t, and void_list_node.
| static tree define_builtin_type PARAMS | ( | (int, int, int, int, int) | ) | [static] |
| static void define_builtin PARAMS | ( | (enum built_in_function, const char *, enum built_in_class, tree, int) | ) | [static] |
Definition at line 169 of file builtins.c.
References build_function_call_expr(), built_in_decls, and NULL_TREE.
Definition at line 180 of file builtins.c.
References build_function_call_expr(), built_in_decls, and NULL_TREE.
tree builtin_types[(int) BT_LAST] [static] |
Definition at line 113 of file builtins.c.
Referenced by c_common_nodes_and_builtins(), def_fn_type(), define_builtin_type(), and GTY().
struct builtin_record java_builtins[] [static] |
Initial value:
{
{ { "java.lang.Math" }, { "min" }, min_builtin },
{ { "java.lang.Math" }, { "max" }, max_builtin },
{ { "java.lang.Math" }, { "abs" }, abs_builtin },
{ { "java.lang.Math" }, { "cos" }, cos_builtin },
{ { "java.lang.Math" }, { "sin" }, sin_builtin },
{ { "java.lang.Math" }, { "sqrt" }, sqrt_builtin },
{ { NULL }, { NULL }, NULL }
}
Definition at line 100 of file builtins.c.
1.5.6