⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tree.h

📁 GUN开源阻止下的编译器GCC
💻 H
📖 第 1 页 / 共 5 页
字号:
extern tree substitute_in_expr		PROTO((tree, tree, tree));/* Given a type T, a FIELD_DECL F, and a replacement value R,   return a new type with all size expressions that contain F   updated by replacing the reference to F with R.  */extern tree substitute_in_type		PROTO((tree, tree, tree));/* variable_size (EXP) is like save_expr (EXP) except that it   is for the special case of something that is part of a   variable size for a data type.  It makes special arrangements   to compute the value at the right time when the data type   belongs to a function parameter.  */extern tree variable_size		PROTO((tree));/* stabilize_reference (EXP) returns an reference equivalent to EXP   but it can be used multiple times   and only evaluate the subexpressions once.  */extern tree stabilize_reference		PROTO((tree));/* Subroutine of stabilize_reference; this is called for subtrees of   references.  Any expression with side-effects must be put in a SAVE_EXPR   to ensure that it is only evaluated once.  */extern tree stabilize_reference_1	PROTO((tree));/* Return EXP, stripped of any conversions to wider types   in such a way that the result of converting to type FOR_TYPE   is the same as if EXP were converted to FOR_TYPE.   If FOR_TYPE is 0, it signifies EXP's type.  */extern tree get_unwidened		PROTO((tree, tree));/* Return OP or a simpler expression for a narrower value   which can be sign-extended or zero-extended to give back OP.   Store in *UNSIGNEDP_PTR either 1 if the value should be zero-extended   or 0 if the value should be sign-extended.  */extern tree get_narrower		PROTO((tree, int *));/* Given MODE and UNSIGNEDP, return a suitable type-tree   with that mode.   The definition of this resides in language-specific code   as the repertoire of available types may vary.  */extern tree type_for_mode		PROTO((enum machine_mode, int));/* Given PRECISION and UNSIGNEDP, return a suitable type-tree   for an integer type with at least that precision.   The definition of this resides in language-specific code   as the repertoire of available types may vary.  */extern tree type_for_size		PROTO((unsigned, int));/* Given an integer type T, return a type like T but unsigned.   If T is unsigned, the value is T.   The definition of this resides in language-specific code   as the repertoire of available types may vary.  */extern tree unsigned_type		PROTO((tree));/* Given an integer type T, return a type like T but signed.   If T is signed, the value is T.   The definition of this resides in language-specific code   as the repertoire of available types may vary.  */extern tree signed_type			PROTO((tree));/* This function must be defined in the language-specific files.   expand_expr calls it to build the cleanup-expression for a TARGET_EXPR.   This is defined in a language-specific file.  */extern tree maybe_build_cleanup		PROTO((tree));/* Given an expression EXP that may be a COMPONENT_REF or an ARRAY_REF,   look for nested component-refs or array-refs at constant positions   and find the ultimate containing object, which is returned.  */extern tree get_inner_reference		PROTO((tree, int *, int *, tree *, enum machine_mode *, int *, int *));/* Return the FUNCTION_DECL which provides this _DECL with its context,   or zero if none.  */extern tree decl_function_context 	PROTO((tree));/* Return the RECORD_TYPE, UNION_TYPE, or QUAL_UNION_TYPE which provides   this _DECL with its context, or zero if none.  */extern tree decl_type_context		PROTO((tree));/* Given the FUNCTION_DECL for the current function,   return zero if it is ok for this function to be inline.   Otherwise return a warning message with a single %s   for the function's name.  */extern char *function_cannot_inline_p 	PROTO((tree));/* Return 1 if EXPR is the real constant zero.  */extern int real_zerop PROTO((tree));/* Declare commonly used variables for tree structure.  *//* An integer constant with value 0 */extern tree integer_zero_node;/* An integer constant with value 1 */extern tree integer_one_node;/* An integer constant with value 0 whose type is sizetype.  */extern tree size_zero_node;/* An integer constant with value 1 whose type is sizetype.  */extern tree size_one_node;/* A constant of type pointer-to-int and value 0 */extern tree null_pointer_node;/* A node of type ERROR_MARK.  */extern tree error_mark_node;/* The type node for the void type.  */extern tree void_type_node;/* The type node for the ordinary (signed) integer type.  */extern tree integer_type_node;/* The type node for the unsigned integer type.  */extern tree unsigned_type_node;/* The type node for the ordinary character type.  */extern tree char_type_node;/* Points to the name of the input file from which the current input   being parsed originally came (before it went into cpp).  */extern char *input_filename;/* Current line number in input file.  */extern int lineno;/* Nonzero for -pedantic switch: warn about anything   that standard C forbids.  */extern int pedantic;/* Nonzero means lvalues are limited to those valid in pedantic ANSI C.   Zero means allow extended lvalues.  */extern int pedantic_lvalues;/* Nonzero means can safely call expand_expr now;   otherwise layout_type puts variable sizes onto `pending_sizes' instead.  */extern int immediate_size_expand;/* Points to the FUNCTION_DECL of the function whose body we are reading. */extern tree current_function_decl;/* Nonzero if function being compiled can call setjmp.  */extern int current_function_calls_setjmp;/* Nonzero if function being compiled can call longjmp.  */extern int current_function_calls_longjmp;/* Nonzero means all ..._TYPE nodes should be allocated permanently.  */extern int all_types_permanent;/* Pointer to function to compute the name to use to print a declaration.  */extern char *(*decl_printable_name) ();/* Pointer to function to finish handling an incomplete decl at the   end of compilation.  */extern void (*incomplete_decl_finalize_hook) ();/* In tree.c */extern char *perm_calloc			PROTO((int, long));extern tree get_set_constructor_bits		PROTO((tree, char*, int));extern tree get_set_constructor_bytes		PROTO((tree,						       unsigned char*, int));/* In stmt.c */extern void expand_fixups			PROTO((struct rtx_def *));extern tree expand_start_stmt_expr		PROTO((void));extern tree expand_end_stmt_expr		PROTO((tree));extern void expand_expr_stmt			PROTO((tree));extern int warn_if_unused_value			PROTO((tree));extern void expand_decl_init			PROTO((tree));extern void clear_last_expr			PROTO((void));extern void expand_label			PROTO((tree));extern void expand_goto				PROTO((tree));extern void expand_asm				PROTO((tree));extern void expand_start_cond			PROTO((tree, int));extern void expand_end_cond			PROTO((void));extern void expand_start_else			PROTO((void));extern void expand_start_elseif			PROTO((tree));extern struct nesting *expand_start_loop 	PROTO((int));extern struct nesting *expand_start_loop_continue_elsewhere 	PROTO((int));extern void expand_loop_continue_here		PROTO((void));extern void expand_end_loop			PROTO((void));extern int expand_continue_loop			PROTO((struct nesting *));extern int expand_exit_loop			PROTO((struct nesting *));extern int expand_exit_loop_if_false		PROTO((struct nesting *,						       tree));extern int expand_exit_something		PROTO((void));extern void expand_null_return			PROTO((void));extern void expand_return			PROTO((tree));extern void expand_start_bindings		PROTO((int));extern void expand_end_bindings			PROTO((tree, int, int));extern tree last_cleanup_this_contour		PROTO((void));extern void expand_start_case			PROTO((int, tree, tree,						       char *));extern void expand_end_case			PROTO((tree));extern int pushcase				PROTO((tree,						       tree (*) (tree, tree),						       tree, tree *));extern int pushcase_range			PROTO((tree, tree,						       tree (*) (tree, tree),						       tree, tree *));/* In fold-const.c *//* Fold constants as much as possible in an expression.   Returns the simplified expression.   Acts only on the top level of the expression;   if the argument itself cannot be simplified, its   subexpressions are not changed.  */extern tree fold		PROTO((tree));extern int force_fit_type	PROTO((tree, int));extern int add_double		PROTO((HOST_WIDE_INT, HOST_WIDE_INT,				       HOST_WIDE_INT, HOST_WIDE_INT,				       HOST_WIDE_INT *, HOST_WIDE_INT *));extern int neg_double		PROTO((HOST_WIDE_INT, HOST_WIDE_INT,				       HOST_WIDE_INT *, HOST_WIDE_INT *));extern int mul_double		PROTO((HOST_WIDE_INT, HOST_WIDE_INT,				       HOST_WIDE_INT, HOST_WIDE_INT,				       HOST_WIDE_INT *, HOST_WIDE_INT *));extern void lshift_double	PROTO((HOST_WIDE_INT, HOST_WIDE_INT,				       HOST_WIDE_INT, int, HOST_WIDE_INT *,				       HOST_WIDE_INT *, int));extern void rshift_double	PROTO((HOST_WIDE_INT, HOST_WIDE_INT,				       HOST_WIDE_INT, int,				       HOST_WIDE_INT *, HOST_WIDE_INT *, int));extern void lrotate_double	PROTO((HOST_WIDE_INT, HOST_WIDE_INT,				       HOST_WIDE_INT, int, HOST_WIDE_INT *,				       HOST_WIDE_INT *));extern void rrotate_double	PROTO((HOST_WIDE_INT, HOST_WIDE_INT,				       HOST_WIDE_INT, int, HOST_WIDE_INT *,				       HOST_WIDE_INT *));extern int operand_equal_p	PROTO((tree, tree, int));extern tree invert_truthvalue	PROTO((tree));/* The language front-end must define these functions.  *//* Function of no arguments for initializing lexical scanning.  */extern void init_lex				PROTO((void));/* Function of no arguments for initializing the symbol table.  */extern void init_decl_processing		PROTO((void));/* Functions called with no arguments at the beginning and end or processing   the input source file.  */extern void lang_init				PROTO((void));extern void lang_finish				PROTO((void));/* Function to identify which front-end produced the output file. */extern char *lang_identify			PROTO((void));/* Function to replace the DECL_LANG_SPECIFIC field of a DECL with a copy.  */extern void copy_lang_decl			PROTO((tree));/* Function called with no arguments to parse and compile the input.  */extern int yyparse				PROTO((void));/* Function called with option as argument   to decode options starting with -f or -W or +.   It should return nonzero if it handles the option.  */extern int lang_decode_option			PROTO((char *));/* Functions for processing symbol declarations.  *//* Function to enter a new lexical scope.   Takes one argument: always zero when called from outside the front end.  */extern void pushlevel				PROTO((int));/* Function to exit a lexical scope.  It returns a BINDING for that scope.   Takes three arguments:     KEEP -- nonzero if there were declarations in this scope.     REVERSE -- reverse the order of decls before returning them.     FUNCTIONBODY -- nonzero if this level is the body of a function.  */extern tree poplevel				PROTO((int, int, int));/* Set the BLOCK node for the current scope level.  */extern void set_block				PROTO((tree));/* Function to add a decl to the current scope level.   Takes one argument, a decl to add.   Returns that decl, or, if the same symbol is already declared, may   return a different decl for that name.  */extern tree pushdecl				PROTO((tree));/* Function to return the chain of decls so far in the current scope level.  */extern tree getdecls				PROTO((void));/* Function to return the chain of structure tags in the current scope level.  */extern tree gettags				PROTO((void));extern tree build_range_type PROTO((tree, tree, tree));/* Call when starting to parse a declaration:   make expressions in the declaration last the length of the function.   Returns an argument that should be passed to resume_momentary later.  */extern int suspend_momentary PROTO((void));extern int allocation_temporary_p PROTO((void));/* Call when finished parsing a declaration:   restore the treatment of node-allocation that was   in effect before the suspension.   YES should be the value previously returned by suspend_momentary.  */extern void resume_momentary PROTO((int));/* Called after finishing a record, union or enumeral type.  */extern void rest_of_type_compilation PROTO((tree, int));/* Save the current set of obstacks, but don't change them.  */extern void push_obstacks_nochange PROTO((void));extern void permanent_allocation PROTO((int));extern void push_momentary PROTO((void));extern void clear_momentary PROTO((void));extern void pop_momentary PROTO((void));extern void end_temporary_allocation PROTO((void));/* Pop the obstack selection stack.  */extern void pop_obstacks PROTO((void));

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -