]> git.ipfire.org Git - thirdparty/gcc.git/commit
flow.c (find_basic_blocks): Don't create a new basic block for calls in a LIBCALL...
authorJason Merrill <jason@gcc.gnu.org>
Wed, 11 Feb 1998 10:21:23 +0000 (05:21 -0500)
committerJason Merrill <jason@gcc.gnu.org>
Wed, 11 Feb 1998 10:21:23 +0000 (05:21 -0500)
commitddb0137cdcda0f4e0ab44c71a01b78ae3a6f7f8f
treea2820ab23616bec90040467db7ba7f0ce22958dc
parent4ceeccef8ac519b726982179437d85159c106a8a
flow.c (find_basic_blocks): Don't create a new basic block for calls in a LIBCALL block.

* flow.c (find_basic_blocks): Don't create a new basic block
for calls in a LIBCALL block.
* flow.c (flow_analysis): Be consistent with find_basic_blocks in
determining when a new basic block starts.
* flow.c (find_basic_blocks): A CALL_INSN that can throw starts
a new basic block.
(find_basic_blocks_1): Likewise.
* except.c (get_dynamic_handler_chain): Only make the call once per
  function.
* except.c (expand_fixup_region_end): New fn.
(expand_fixup_region_start): Likewise.
(expand_eh_region_start_tree): Store cleanup into finalization here.
* stmt.c (expand_cleanups): Use them to protect fixups.
* except.c (get_dynamic_handler_chain): Build up a FUNCTION_DECL.
* optabs.c (init_optabs): Lose get_dynamic_handler_chain_libfunc.
* expr.h: Likewise.
cp/:
* decl.c (copy_args_p): Handle copy elision for types with virtual
  bases.
   * call.c (build_over_call): Likewise.
* exception.cc (__cp_pop_exception): Lose handler arg.
* except.c (do_pop_exception): Likewise.
(push_eh_cleanup): Let the cleanup mechanism supply the handler.
(expand_end_catch_block): Likewise.

From-SVN: r17856
gcc/ChangeLog
gcc/cp/ChangeLog
gcc/cp/call.c
gcc/cp/decl.c
gcc/cp/except.c
gcc/cp/exception.cc
gcc/except.c
gcc/expr.h
gcc/flow.c
gcc/optabs.c
gcc/stmt.c