summaryrefslogtreecommitdiff
path: root/gcc/unwind.h
Commit message (Collapse)AuthorAgeFilesLines
* * gthr-gnat.c, gthr-gnat.h, gthr.h, libgcc2.h, unwind-dw2-fde.hzack2004-11-301-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | * unwind.h: Surround all visibility pragmas with #ifndef HIDE_EXPORTS. * mklibgcc.in: Drastic restructure for comprehensibility. Remove the old hidden-directive hack. Eliminate support for .txt files in LIB2ADD etc (never used). Eliminate support for assembly source files in LIB2ADDEH* and LIBUNWIND (also never used). Build up dependency lists for libraries incrementally. If we have SHLIB_LINK, compile each file twice, once for the static and once for the shared library; also probe for -fvisibility=hidden in the generated libgcc.mk. If found, pass that and -DHIDE_EXPORTS to the compilation of every C source file going into the static library. If found, generate hidden-directive lists for every assembly source file going into the static library, but incorporate them with -include instead of ld -r. Write comments into generated libgcc.mk to facilitate debugging. * Makefile.in: Pass ASM_HIDDEN_OP to mklibgcc. * config/t-slibgcc-darwin: Define ASM_HIDDEN_OP. * config/darwin.h (REAL_LIBGCC_SPEC): Put -lgcc back in -Zdynamiclib case. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@91513 138bc75d-0d04-0410-961f-82ee72b054a4
* * gthr-gnat.c: Add visibility #pragmas.mmitchel2004-08-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * gthr-gnat.h : Likewise. * gthr.h: Likewise. * libgcc2.c (__ffsSI2): Move prototype to libgcc2.h. (__ffsDI2): Likewise. (__clzSI2): Likewise. (__ctzSI2): Likewise. (__ctzDI2): Likewise. (__popcountSI2): Likewise. (__popcountDI2): Likewise. (__paritySI2): Likewise. (__parityDI2): Likewise. * libgcc2.h: Add visibility #pragmas. (__clzDI2): Add prototype. (__clzSI2): Likewise. (__ctzSI2): Likewise. (__ffsDI2): Likewise. (__ffsSI2): Likewise. (__ctzDI2): Likewise. (__popcountSI2): Likewise. (__popcountDI2): Likewise. (__paritySI2): Likewise. (__parityDI2): Likewise. * unwind-dw2-fde.h: Add visibility #pragmas. * unwind.h: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@85489 138bc75d-0d04-0410-961f-82ee72b054a4
* * alias.c, basic-block.h, c-common.c, c-common.h,kazu2004-01-211-1/+1
| | | | | | | | | | | | | | | | | | | | | c-cppbuiltin.c, c-opts.c, c-pragma.c, c-pretty-print.c, calls.c, cfg.c, cfgcleanup.c, cfgrtl.c, cgraph.h, collect2.c, combine.c, cppcharset.c, cpphash.h, cppinit.c, cpplib.c, cpplib.h, cppmacro.c, crtstuff.c, cselib.c, cselib.h, defaults.h, df.c, dominance.c, et-forest.c, expmed.c, expr.c, expr.h, fix-header.c, function.h, gcc.c, gcse.c, genattrtab.c, genautomata.c, genconditions.c, genemit.c, genflags.c, gengtype.c, gengtype.h, genopinit.c, genrecog.c, gensupport.c, ggc-zone.c, graph.c, haifa-sched.c, input.h, integrate.c, langhooks-def.h, langhooks.c, langhooks.h, line-map.c, line-map.h, local-alloc.c, optabs.c, optabs.h, postreload.c, ra.h, recog.c, reg-stack.c, regmove.c, reload.c, reorg.c, rtl.c, sched-deps.c, sched-ebb.c, sdbout.c, system.h, target.h, targhooks.c, toplev.h, tree-inline.c, unwind-pe.h, unwind.h, varray.c, varray.h: Update copyright. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@76302 138bc75d-0d04-0410-961f-82ee72b054a4
* * dwarf2.h, unwind-dw2-fde.h, unwind-pe.h, unwind.h:zack2004-01-081-0/+5
| | | | | | | | | | | | Add multiple-include guard. cp: * parser.c (cp_parser_save_member_function_body): Mark the definition static. treelang: * parse.y (yyerror): Mark the definition static. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@75536 138bc75d-0d04-0410-961f-82ee72b054a4
* * config/ia64/libgcc-ia64.ver: Export _Unwind_GetBSP@@GCC_3.3.2.jakub2003-09-041-0/+3
| | | | | | | | | | | | * config/ia64/unwind-ia64.c (_Unwind_GetBSP): New function. * unwind.h (_Unwind_GetBSP): New prototype. * libgcc-std.ver: Add empty GCC_3.3.2 version. * mkmap-symver.awk: For symbol versions with no exported symbols, don't put anything into version script, just change all symbol versions which inherit from it to inherit from its ancestor. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71057 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc/rth2003-05-071-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * except.c: Revert 04-01 and 04-02 forced-unwind changes. * flags.h, toplev.c, doc/invoke.texi: Likewise. * unwind-dw2.c (_Unwind_GetCFA): Fix ptr->int conversion warning. * unwind.inc (_Unwind_DeleteException): Check for null exception_cleanup. * unwind-sjlj.c (_Unwind_SjLj_Resume_or_Rethrow): New. * unwind.inc (_Unwind_Resume_or_Rethrow): New. * unwind.h: Declare them. * libgcc-std.ver (GCC_3.3): Export them. gcc/cp/ * cfns.gperf: Comment out POSIX thread cancellation points, plus abort and raise. * cfns.h: Regenerate. gcc/testsuite/ * g++.dg/eh/forced1.C: Expect catch-all handlers to run. Verify exception_cleanup not called for rethrows. * g++.dg/eh/forced2.C: Test that exception_cleanup is called when exiting catch block without rethrowing. * g++.dg/eh/forced3.C: New. * g++.dg/eh/forced4.C: New. libstdc++-v3/ * libsupc++/eh_catch.cc (__cxa_begin_catch): Handle foreign exceptions. (__cxa_end_catch): Likewise. * libsupc++/eh_throw.cc (__cxa_rethrow): Likewise. Use _Unwind_Resume_or_Rethrow. * libsupc++/eh_personality.cc (empty_exception_spec): New. (PERSONALITY_FUNCTION): Don't ignore terminate or catch-all for _UA_FORCE_UNWIND. Honor empty filter spec for foreign exceptions. Don't push terminate/unexpected to cxa functions. (__cxa_call_unexpected): Remove foreign exception fixmes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@66583 138bc75d-0d04-0410-961f-82ee72b054a4
* * unwind.inc (_Unwind_Backtrace): New function.uweigand2003-04-151-0/+8
| | | | | | | | * unwind.h (_Unwind_Backtrace): Declare it. * libgcc-std.ver (_Unwind_Backtrace): Export it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@65641 138bc75d-0d04-0410-961f-82ee72b054a4
* * libgcc-std.ver (_Unwind_GetCFA): New.rth2003-04-031-0/+3
| | | | | | | | | | * unwind-dw2.c (_Unwind_GetCFA): New. * unwind-libunwind.c (_Unwind_GetCFA): New. * unwind-sjlj.c (_Unwind_GetCFA): New. * unwind.h: Declare it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@65190 138bc75d-0d04-0410-961f-82ee72b054a4
* * unwind.h: Add the GPL exception.matz2003-03-051-0/+7
| | | | | | | * Makefile.in (USER_H): Add unwind.h. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@63839 138bc75d-0d04-0410-961f-82ee72b054a4
* * unwind.h (_Unwind_GetTextRelBase): Mark parameter as unused.schwab2003-01-231-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@61659 138bc75d-0d04-0410-961f-82ee72b054a4
* 2002-11-26 Andrew Haley <aph@redhat.com>aph2002-11-271-0/+4
| | | | | | | | | | | | | * unwind-sjlj.c (_Unwind_FindEnclosingFunction): Rename from_Unwind_Find_Enclosing_Function. * unwind-dw2.c (_Unwind_FindEnclosingFunction): Likewise. * config/ia64/unwind-ia64.c (_Unwind_FindEnclosingFunction): Likewise. * libgcc-std.ver (_Unwind_FindEnclosingFunction): Rename from _Unwind_Find_Enclosing_Function, export @@GCC_3.3. * unwind.h (_Unwind_FindEnclosingFunction): Add. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@59568 138bc75d-0d04-0410-961f-82ee72b054a4
* * gcc/unwind.h (_Unwind_Ptr): Make 64 bits on IA64 HP-UX.sje2002-08-151-0/+5
| | | | | | | | | | | (_Unwind_Internal_Ptr): 32 bit version for use in read_encoded_value_with_base. * gcc/unwind-pe.h (read_encoded_value_with_base): Use _Unwind_Internal_Ptr instead of _Unwind_Ptr in order to get the right size. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@56351 138bc75d-0d04-0410-961f-82ee72b054a4
* * target.h: Fix formatting.kazu2002-05-311-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | * timevar.h: Likewise. * tlink.c: Likewise. * toplev.c: Likewise. * toplev.h: Likewise. * tree.c: Likewise. * tree-dump.h: Likewise. * tree.h: Likewise. * tree-inline.h: Likewise. * unroll.c: Likewise. * unwind-dw2.c: Likewise. * unwind-dw2-fde.c: Likewise. * unwind-dw2-fde-glibc.c: Likewise. * unwind-dw2-fde.h: Likewise. * unwind.h: Likewise. * unwind-sjlj.c: Likewise. * varasm.c: Likewise. * varray.h: Likewise. * vmsdbg.h: Likewise. * vmsdbgout.c: Likewise. * xcoffout.h: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@54123 138bc75d-0d04-0410-961f-82ee72b054a4
* * unwind.h (_UA_END_OF_STACK): New flag.rth2001-09-041-0/+1
| | | | | | | * unwind.inc (_Unwind_ForcedUnwind_Phase2): Set it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45384 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.in, alias.c, basic-block.h, bb-reorder.c, bitmap.c,gerald2001-08-221-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bitmap.h, builtin-types.def, builtins.c, builtins.def, c-aux-info.c, c-common.c, c-common.def, c-common.h, c-convert.c, c-decl.c, c-dump.c, c-dump.h, c-errors.c, c-format.c, c-lang.c, c-lex.c, c-lex.h, c-parse.in, c-pragma.c, c-pragma.h, c-semantics.c, c-tree.h, c-typeck.c, caller-save.c, calls.c, collect2.c, collect2.h, combine.c, conditions.h, config.gcc, configure.frag, configure.in, conflict.c, convert.c, convert.h, cppspec.c, crtstuff.c, cse.c, cselib.c, cselib.h, dbxout.c, dbxout.h, defaults.h, dependence.c, df.c, df.h, diagnostic.c, diagnostic.h, doloop.c, dominance.c, dwarf.h, dwarf2.h, dwarf2asm.c, dwarf2asm.h, dwarf2out.c, dwarf2out.h, dwarfout.c, emit-rtl.c, errors.c, errors.h, except.c, except.h, exgettext, explow.c, expmed.c, expr.c, expr.h, final.c, fixproto, flags.h, flow.c, fold-const.c, fp-test.c, function.c, function.h, gbl-ctors.h, gcc.c, gcc.h, gcc.hlp, gccspec.c, gcov-io.h, gcse.c, genattr.c, genattrtab.c, gencheck.c, gencodes.c, genconfig.c, genemit.c, genextract.c, genflags.c, gengenrtl.c, genmultilib, genopinit.c, genoutput.c, genpeep.c, genrecog.c, gensupport.c, gensupport.h, ggc-callbacks.c, ggc-common.c, ggc-none.c, ggc-page.c, ggc-simple.c, ggc.h, global.c, graph.c, graph.h, gthr-aix.h, gthr-dce.h, gthr-posix.h, gthr-rtems.h, gthr-single.h, gthr-solaris.h, gthr-vxworks.h, gthr-win32.h, gthr.h, haifa-sched.c, halfpic.c, halfpic.h, hard-reg-set.h, hwint.h, ifcvt.c, input.h, insn-addr.h, integrate.c, integrate.h, jump.c, lcm.c, libgcc2.c, libgcc2.h, lists.c, local-alloc.c, loop.c, loop.h, machmode.def, machmode.h, main.c, mbchar.c, mbchar.h, mips-tdump.c, mips-tfile.c, mklibgcc.in, mkmap-flat.awk, mkmap-symver.awk, optabs.c, output.h, params.c, params.def, params.h, predict.c, predict.def, predict.h, prefix.c, prefix.h, print-rtl.c, print-tree.c, profile.c, protoize.c, read-rtl.c, real.c, real.h, recog.c, recog.h, reg-stack.c, regclass.c, regmove.c, regrename.c, regs.h, reload.c, reload.h, reload1.c, reorg.c, resource.c, resource.h, rtl.c, rtl.def, rtl.h, rtlanal.c, sbitmap.c, sbitmap.h, sched-deps.c, sched-ebb.c, sched-int.h, sched-rgn.c, sched-vis.c, sdbout.c, sdbout.h, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c, ssa.c, ssa.h, stmt.c, stor-layout.c, stringpool.c, system.h, timevar.c, timevar.def, timevar.h, tlink.c, toplev.c, toplev.h, tree.c, tree.def, tree.h, tsystem.h, unroll.c, unwind-dw2-fde.c, unwind-dw2-fde.h, unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h, unwind.inc, varasm.c, varray.c, varray.h, xcoffout.c, xcoffout.h: replace "GNU CC" with "GCC". git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45105 138bc75d-0d04-0410-961f-82ee72b054a4
* * defaults.h (ASM_PREFERRED_EH_DATA_FORMAT): New.rth2001-05-121-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * dwarf2asm.c (dw2_force_const_mem, dw2_output_indirect_constant_1, dw2_output_indirect_constants, dw2_asm_output_encoded_addr_rtx): New. * dwarf2asm.h (dw2_asm_output_encoded_addr_rtx): Prototype. (dw2_output_indirect_constants): Prototype. * dwarf2out.c (dwarf2out_begin_prologue): Generate current_function_func_begin_label if we'll need it for EH. Exit early for IA64_UNWIND_INFO. * except.c: Get DW_EH_PE_* defines from dwarf2.h. (eh_data_format_name): Update for indirect references. (output_function_exception_table): Care for IA64_UNWIND_INFO. Handle ASM_PREFERRED_EH_DATA_FORMAT. * except.h (MUST_USE_SJLJ_EXCEPTIONS): IA64_UNWIND_INFO needn't define HAVE_eh_return etc. * final.c (final_start_function): Always call dwarf2out_begin_prologue. (final_end_function): Don't call output_function_exception_table. * toplev.c (compile_file): Call dw2_output_indirect_constants. (rest_of_compilation): Invoke output_function_exception_table for ia64 before assemble_end_function. * tm.texi (ASM_PREFERRED_EH_DATA_FORMAT): Document. (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): Document. * unwind-dw2.c (_Unwind_GetTextRelBase, _Unwind_GetDataRelBase): New. * unwind.h: Declare them. * libgcc-std.ver: Export them. * unwind-pe.h: New file. * config/alpha/elf.h (ASM_PREFERRED_EH_DATA_FORMAT): New. * config/ia64/fde-glibc.c: Use "struct unw_table_entry" instead of "fde". (find_fde_for_dso): Extract DT_PLTGOT. (_Unwind_FindTableEntry): Rename from __ia64_find_fde; return the segment and gp as well. * config/ia64/frame-ia64.c: Remove file. * config/ia64/frame-ia64.h: Remove file. * config/ia64/unwind-ia64.c: New file. * config/ia64/unwind-ia64.h: New file. * config/ia64/ia64.h (ASM_OUTPUT_EH_CHAR): Remove. (ASM_OUTPUT_EH_SHORT, ASM_OUTPUT_EH_INT): Remove. (ASM_OUTPUT_EH_DOUBLE_INT): Remove. (ASM_PREFERRED_EH_DATA_FORMAT): New. (ASM_MAYBE_OUTPUT_ENCODED_ADDR_RTX): New. (IA64_UNWIND_INFO): Re-enable. (HANDLER_SECTION): Remove. (EH_RETURN_DATA_REGNO): New. * config/ia64/ia64.md (exception_receiver): Remove. * config/ia64/t-glibc (LIB2ADDEH): Re-enable. * config/ia64/t-ia64 (LIB2ADDEH): Re-enable. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41981 138bc75d-0d04-0410-961f-82ee72b054a4
* IA-64 ABI Exception Handling.rth2001-03-281-0/+166
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@40924 138bc75d-0d04-0410-961f-82ee72b054a4