diff options
author | echristo <echristo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-21 19:23:03 +0000 |
---|---|---|
committer | echristo <echristo@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-21 19:23:03 +0000 |
commit | 491e04eff90c939f98cbd25a5f29dbdbc1a9e11d (patch) | |
tree | 62d1d9e6aa0313957234dd1e34bd0b74115418e7 /gcc/builtins.c | |
parent | 9b6c840690660380416ccac29dc80d6d7776cd98 (diff) | |
download | gcc-491e04eff90c939f98cbd25a5f29dbdbc1a9e11d.tar.gz |
2004-07-21 Eric Christopher <echristo@redhat.com>
* builtins.c (expand_builtin_setjmp_receiver): Fix comment for code
removal.
* c-decl.c (pop_scope): Ditto.
* calls.c (expand_call): Remove call to current_nesting_level,
update comment accordingly. Remove calls to expand_start_target_temps
and expand_end_target_temps.
* cfgexpand.c (construct_init_block): Remove call to
expand_start_bindings_and_block.
(construct_exit_block): Remove call to expand_end_bindings.
* expr.c (safe_from_p): Remove BIND_EXPR handling.
(expand_expr_real_1): Ditto. Fix formatting.
(expand_vars): Delete.
* stmt.c (POPSTACK): Remove block_stack.
(stmt_status): Remove x_block_stack.
(block_stack): Delete.
(expand_start_bindings_and_block): Ditto.
(expand_start_target_temps): Ditto.
(expand_end_target_temps): Ditto.
(current_nesting_level): Ditto.
(warn_about_unused_variables): Ditto.
(expand_end_bindings): Ditto.
* tree.h: Remove declarations for above.
2004-07-21 Eric Christopher <echristo@redhat.com>
* decl.c (poplevel): Inline unused variable checking.
Change formatting.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85019 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/builtins.c')
-rw-r--r-- | gcc/builtins.c | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/gcc/builtins.c b/gcc/builtins.c index 902227705d7..2d3d440ea67 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -571,8 +571,7 @@ expand_builtin_setjmp_receiver (rtx receiver_label ATTRIBUTE_UNUSED) emit_insn (gen_rtx_CLOBBER (VOIDmode, static_chain_rtx)); /* Now put in the code to restore the frame pointer, and argument - pointer, if needed. The code below is from expand_end_bindings - in stmt.c; see detailed documentation there. */ + pointer, if needed. */ #ifdef HAVE_nonlocal_goto if (! HAVE_nonlocal_goto) #endif @@ -814,7 +813,7 @@ expand_builtin_nonlocal_goto (tree arglist) emit_insn (gen_rtx_CLOBBER (VOIDmode, gen_rtx_MEM (BLKmode, hard_frame_pointer_rtx))); - + /* Restore frame pointer for containing function. This sets the actual hard register used for the frame pointer to the location of the function's incoming static chain info. @@ -822,14 +821,14 @@ expand_builtin_nonlocal_goto (tree arglist) proper value and reload the argument pointer, if needed. */ emit_move_insn (hard_frame_pointer_rtx, r_fp); emit_stack_restore (SAVE_NONLOCAL, r_sp, NULL_RTX); - + /* USE of hard_frame_pointer_rtx added for consistency; not clear if really needed. */ emit_insn (gen_rtx_USE (VOIDmode, hard_frame_pointer_rtx)); emit_insn (gen_rtx_USE (VOIDmode, stack_pointer_rtx)); emit_indirect_jump (r_label); } - + /* Search backwards to the jump insn and mark it as a non-local goto. */ for (insn = get_last_insn (); insn; insn = PREV_INSN (insn)) @@ -2038,7 +2037,7 @@ expand_builtin_mathfn_3 (tree exp, rtx target, rtx subtarget) case BUILT_IN_SIN: case BUILT_IN_SINF: case BUILT_IN_SINL: - if (!expand_twoval_unop (builtin_optab, op0, 0, target, 0)) + if (!expand_twoval_unop (builtin_optab, op0, 0, target, 0)) abort(); break; case BUILT_IN_COS: @@ -7576,13 +7575,13 @@ fold_builtin_isascii (tree arglist) { /* Transform isascii(c) -> ((c & ~0x7f) == 0). */ tree arg = TREE_VALUE (arglist); - + arg = fold (build2 (EQ_EXPR, integer_type_node, build2 (BIT_AND_EXPR, integer_type_node, arg, build_int_2 (~ (unsigned HOST_WIDE_INT) 0x7f, ~ (HOST_WIDE_INT) 0)), integer_zero_node)); - + if (in_gimple_form && !TREE_CONSTANT (arg)) return NULL_TREE; else @@ -7601,7 +7600,7 @@ fold_builtin_toascii (tree arglist) { /* Transform toascii(c) -> (c & 0x7f). */ tree arg = TREE_VALUE (arglist); - + return fold (build2 (BIT_AND_EXPR, integer_type_node, arg, build_int_2 (0x7f, 0))); } @@ -7950,7 +7949,7 @@ fold_builtin_1 (tree exp, bool ignore) if (flag_unsafe_math_optimizations && BUILTIN_ROOT_P (fcode)) { tree powfn = mathfn_built_in (type, BUILT_IN_POW); - + if (powfn) { tree arg0 = TREE_VALUE (TREE_OPERAND (arg, 1)); @@ -7958,7 +7957,7 @@ fold_builtin_1 (tree exp, bool ignore) /* The inner root was either sqrt or cbrt. */ REAL_VALUE_TYPE dconstroot = BUILTIN_SQRT_P (fcode) ? dconsthalf : dconstthird; - + /* Adjust for the outer root. */ SET_REAL_EXP (&dconstroot, REAL_EXP (&dconstroot) - 1); dconstroot = real_value_truncate (TYPE_MODE (type), dconstroot); @@ -8032,7 +8031,7 @@ fold_builtin_1 (tree exp, bool ignore) build_tree_list (NULL_TREE, tree_root)); return build_function_call_expr (powfn, arglist); } - + } } break; @@ -8431,7 +8430,7 @@ fold_builtin_1 (tree exp, bool ignore) } /* A wrapper function for builtin folding that prevents warnings for - "statement without effect" and the like, caused by removing the + "statement without effect" and the like, caused by removing the call node earlier than the warning is generated. */ tree @@ -8540,7 +8539,7 @@ readonly_data_expr (tree exp) /* Make sure we call decl_readonly_section only for trees it can handle (since it returns true for everything it doesn't understand). */ - if (TREE_CODE (exp) == STRING_CST + if (TREE_CODE (exp) == STRING_CST || TREE_CODE (exp) == CONSTRUCTOR || (TREE_CODE (exp) == VAR_DECL && TREE_STATIC (exp))) return decl_readonly_section (exp, 0); |