diff options
author | Steven Bosscher <steven@gcc.gnu.org> | 2012-03-26 16:39:11 +0000 |
---|---|---|
committer | Steven Bosscher <steven@gcc.gnu.org> | 2012-03-26 16:39:11 +0000 |
commit | bbee58432c0cd8be05328375607a631970c674a4 (patch) | |
tree | c3f613b6ee85a62bf5f20361a7f272d9e9f410fc /gcc/expr.c | |
parent | ffe5d70808b73597acd5b7a249aedefaf2ce8863 (diff) | |
download | gcc-bbee58432c0cd8be05328375607a631970c674a4.zip gcc-bbee58432c0cd8be05328375607a631970c674a4.tar.gz gcc-bbee58432c0cd8be05328375607a631970c674a4.tar.bz2 |
toplev.c (check_global_declaration_1): Do not call assemble_external.
* toplev.c (check_global_declaration_1): Do not call assemble_external.
* expr.c (emit_block_move_libcall_fn): Likewise.
(clear_storage_libcall_fn): Likewise.
(expand_expr_addr_expr_1): Likewise.
(expand_expr_real_1): Likewise.
* calls.c (rtx_for_function_call): Likewise.
From-SVN: r185813
Diffstat (limited to 'gcc/expr.c')
-rw-r--r-- | gcc/expr.c | 21 |
1 files changed, 5 insertions, 16 deletions
@@ -1375,8 +1375,7 @@ emit_block_move_via_libcall (rtx dst, rtx src, rtx size, bool tailcall) } /* A subroutine of emit_block_move_via_libcall. Create the tree node - for the function we use for block copies. The first time FOR_CALL - is true, we call assemble_external. */ + for the function we use for block copies. */ static GTY(()) tree block_move_fn; @@ -1419,7 +1418,6 @@ emit_block_move_libcall_fn (int for_call) { emitted_extern = true; make_decl_rtl (block_move_fn); - assemble_external (block_move_fn); } return block_move_fn; @@ -2747,8 +2745,7 @@ set_storage_via_libcall (rtx object, rtx size, rtx val, bool tailcall) } /* A subroutine of set_storage_via_libcall. Create the tree node - for the function we use for block clears. The first time FOR_CALL - is true, we call assemble_external. */ + for the function we use for block clears. */ tree block_clear_fn; @@ -2791,7 +2788,6 @@ clear_storage_libcall_fn (int for_call) { emitted_extern = true; make_decl_rtl (block_clear_fn); - assemble_external (block_clear_fn); } return block_clear_fn; @@ -7413,11 +7409,8 @@ expand_expr_addr_expr_1 (tree exp, rtx target, enum machine_mode tmode, result = XEXP (result, 0); /* ??? Is this needed anymore? */ - if (DECL_P (exp) && !TREE_USED (exp) == 0) - { - assemble_external (exp); - TREE_USED (exp) = 1; - } + if (DECL_P (exp)) + TREE_USED (exp) = 1; if (modifier != EXPAND_INITIALIZER && modifier != EXPAND_CONST_ADDRESS @@ -9012,11 +9005,7 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode, /* Ensure variable marked as used even if it doesn't go through a parser. If it hasn't be used yet, write out an external definition. */ - if (! TREE_USED (exp)) - { - assemble_external (exp); - TREE_USED (exp) = 1; - } + TREE_USED (exp) = 1; /* Show we haven't gotten RTL for this yet. */ temp = 0; |