| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
have to make sure we use it and don't fall off the end of the
function in the unwinder.
Fixes EH codegen bug on vax-dec-vms
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@14258 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
label, as it isn't used. Rename end_label to outer_context.
(expand_eh_region_start_for_decl): Likewise.
(expand_leftover_cleanups): Likewise.
(expand_start_all_catch): Likewise.
* except.h (eh_entry): Likewise.
* except.c (expand_eh_region_end): Likewise. Jump around the nop
that we insert, so that we can optimize it away, if it is unused,
also so that flow analysis can tell if we fall through to the end
of a function or not so that it can know if a function that returns
a value, in fact does or not.
Fixes g++.jason/return2.C when using -fno-sjlj-exceptions
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@14135 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
| |
perform any actions at the start of an expcetion handler that
hasn't already been done, use gen_exception_receiver to emit it.
(expand_leftover_cleanups): Likewise.
* alpha/alpha.md (exception_receiver): Use it.
* pa/pa.h (exception_receiver): Use it.
Fix -fpic on hppa when excetpions are throw across shared libraries.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@14070 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
| |
nonlocal_goto_receiver, add one at the start of the exception
handler.
(expand_leftover_cleanups): Likewise.
Potential fix for eh on alpha, rs6000, and hppa.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@14060 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
__builtin_setjmp, and default to using __builtin_setjmp instead of
setjmp.
* expr.c (expand_builtin_setjmp): New routine, split out from
existing inline code from expand_builtin.
(expand_builtin): Split out code into expand_builtin_setjmp.
* expr.h (expand_builtin_setjmp): Add declaration.
* libgcc2.c (__sjthrow): Default to using __builtin_setjmp instead
of setjmp.
(__sjpopnthrow): Likewise.
* optabs.c (init_optabs): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@14045 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
can better track why the region was made for error reporting.
* except.h (expand_eh_region_start_tree): Likewise.
* tree.h (expand_dhc_cleanup): Likewise.
(expand_dcc_cleanup): Likewise.
* except.c (expand_eh_region_start_for_decl): New routine.
* except.h (expand_eh_region_start_for_decl): Likewise.
* stmt.c (expand_decl_cleanup): Add DECL to call of
expand_eh_region_start_tree.
(expand_dcc_cleanup): Likewise.
(expand_dhc_cleanup): Likewise.
(expand_start_case): Switches introduce conditional contexts.
(expand_start_case_dummy): Likewise.
(expand_start_case_dummy): Likewise.
(expand_end_case): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@13990 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@13969 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
| |
with zeroes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@13613 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@13061 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
| |
(add_partial_entry): New routine.
(expand_start_try_stmts): Moved from cp/except.c.
(expand_start_all_catch): Move functionality of expand_end_try_stmts here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@12716 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@12678 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(__eh_pc): New data object for exception handling.
* except.c (eh_saved_pc): New object so we can call
assemble_external.
(expand_internal_throw_indirect): Call assemble_external for
__eh_pc.
(end_eh_unwinder): Ditto.
(init_eh): Initialize eh_saved_pc.
fixes eh6.C on rs6000 and alpha
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@12646 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
|
|
| |
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@12566 138bc75d-0d04-0410-961f-82ee72b054a4
|
|
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@12551 138bc75d-0d04-0410-961f-82ee72b054a4
|