1. 04 Sep, 2003 1 commit
  2. 24 Jul, 2003 1 commit
  3. 07 May, 2003 1 commit
    • rth's avatar
      gcc/ · ce9beb5c
      rth authored
              * 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
      ce9beb5c
  4. 15 Apr, 2003 1 commit
  5. 03 Apr, 2003 1 commit
  6. 09 Feb, 2003 1 commit
    • rth's avatar
      * libgcc-std.ver (__clztf2): New. · 0f186426
      rth authored
              (__ctztf2, __popcounttf2, __paritytf2): New.
              * libgcc2.c (__clzSI2, __clzDI2, __ctzSI2, __ctzDI2, __popcountSI2,
              __popcountDI2, __paritySI2, __parityDI2): Use UWmode and UDWmode;
              adjust code to match the different type sizes.
              * libgcc2.h (__clzSI2, __ctzSI2, __popcountSI2, __paritySI2,
              __clzDI2, __ctzDI2, __popcountDI2, __parityDI2): New macros.
      
              * optabs.c (init_integral_libfuncs): Don't hard-code SImode and
              TImode; select word_mode and twice that.
              (init_floating_libfuncs): Don't hard-code SFmode and TFmode;
              select the modes from float, double, and long double.
              (init_optabs): Remove duplicate initializations.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@62606 138bc75d-0d04-0410-961f-82ee72b054a4
      0f186426
  7. 01 Feb, 2003 1 commit
    • rth's avatar
      2003-02-01 Richard Henderson <rth@redhat.com> · 6a08d0ab
      rth authored
      	* optabs.c (expand_unop): Use word_mode for outmode of bit scaners.
      	* libgcc2.c (__ffsdi2, __clzsi2, __clzdi2, __ctzsi2, __ctzdi2,
      	__popcountsi2, __popcountdi2, __paritysi2 __paritydi2): Change
      	return type to Wtype.
      
      	* libgcc-std.ver (GCC_3.4): Fix inheritance.
      
      	* config/i386/i386.md (ffssi2): Use nonimmediate_operand for
      	expander input constraint.
      
      2003-02-01  Falk Hueffner  <falk.hueffner@student.uni-tuebingen.de>
      
              * optabs.h (optab_index): Add OTI_clz, OTI_ctz, OTI_popcount and
              OTI_parity.
              (clz_optab, ctz_optab, popcount_optab, parity_optab): New.
              * optabs.c (widen_clz, expand_parity): New.
              (expand_unop): Handle clz and parity.  Hardcode SImode as outmode
              for libcalls to clz, ctz, popcount, and parity.
              (init_optabs): Init clz_optab, ctz_optab, popcount_optab and
              parity_optab, and set up libfunc handlers.
              * libgcc2.c (__clzsi2, __clzdi2, __ctzsi2, __ctzdi2,
              __popcountsi2, __popcountdi2, __paritysi2 __paritydi2,
              __popcount_tab): New.
              * libgcc2.h: Declare them.
              * libgcc-std.ver (GCC_3.4): Add new functions from libgcc2.c.
              * genopinit.c (optabs): Add clz_optab, ctz_optab, popcount_optab
              and parity_optab.
              * builtin-types.def (BT_FN_INT_LONG, BT_FN_INT_LONGLONG): New.
              * builtins.def (BUILT_IN_CLZ, BUILT_IN_CTZ, BUILT_IN_POPCOUNT,
              BUILT_IN_PARITY, BUILT_IN_FFSL, BUILT_IN_CLZL, BUILT_IN_CTZL,
              BUILT_IN_POPCOUNTL, BUILT_IN_PARITYL, BUILT_IN_FFSLL,
              BUILT_IN_CLZLL, BUILT_IN_CTZLL, BUILT_IN_POPCOUNTLL,
              BUILT_IN_PARITYLL): New.
              * builtins.c (expand_builtin_unop): Rename from expand_builtin_ffs
              and add optab argument.
              (expand_builtin): Expand BUILT_IN_{FFS,CLZ,POPCOUNT,PARITY}*.
              * tree.def (CLZ_EXPR, CTZ_EXPR, POPCOUNT_EXPR, PARITY_EXPR): New.
              * expr.c (expand_expr): Handle them.
              * fold-const.c (tree_expr_nonnegative_p): Likewise.
              * rtl.def (CLZ, CTZ, POPCOUNT, PARITY): New.
              * reload1.c (eliminate_regs): Handle them.
              (elimination_effects): Likewise.
              * function.c (instantiate_virtual_regs_1): Likewise
              * genattrtab.c (check_attr_value): Likewise.
              * simplify-rtx.c (simplify_unary_operation): Likewise.
              * c-common.c (c_common_truthvalue_conversion): Handle POPCOUNT_EXPR.
              * combine.c (combine_simplify_rtx): Handle POPCOUNT and PARITY.
              (nonzero_bits): Handle CLZ, CTZ, POPCOUNT and PARITY.
              * config/alpha/alpha.md (clzdi2, ctzdi2, popcountdi2): New.
              * config/arm/arm.c (arm_init_builtins): Rename __builtin_clz to
              __builtin_arm_clz.
              * Makefile.in (LIB2FUNCS_1, LIB2FUNCS_2): Move...
              * mklibgcc.in (lib2funcs): ...here and merge.  Add new members.
              * doc/extend.texi (Other Builtins): Add new builtins.
              * doc/md.texi (Standard Names): Add new patterns.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@62252 138bc75d-0d04-0410-961f-82ee72b054a4
      6a08d0ab
  8. 03 Dec, 2002 1 commit
  9. 27 Nov, 2002 1 commit
    • aph's avatar
      2002-11-26 Andrew Haley <aph@redhat.com> · 41acc81b
      aph authored
              * 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
      41acc81b
  10. 25 Nov, 2002 1 commit
    • aph's avatar
      2002-11-25 Andrew Haley <aph@redhat.com> · 19799cdd
      aph authored
              * libgcc-std.ver (_Unwind_Find_Enclosing_Function): Add.
              * config/ia64/unwind-ia64.c (_Unwind_Find_Enclosing_Function): New.
              * unwind-sjlj.c (_Unwind_Find_Enclosing_Function): Likewise.
              * unwind-dw2.c (_Unwind_Find_Enclosing_Function): Likewise.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@59460 138bc75d-0d04-0410-961f-82ee72b054a4
      19799cdd
  11. 13 Jun, 2001 1 commit
  12. 26 May, 2001 1 commit
  13. 22 May, 2001 1 commit
  14. 16 May, 2001 1 commit
  15. 12 May, 2001 1 commit
    • rth's avatar
      * defaults.h (ASM_PREFERRED_EH_DATA_FORMAT): New. · ad5818ae
      rth authored
      	* 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
      ad5818ae
  16. 11 May, 2001 1 commit
    • zack's avatar
      * Makefile.in: Exterminate all references to assert.h. · c872ef71
      zack authored
      	* cross-make: Likewise.
      	* assert.h: Delete.
      	* configure.in: Correct commentary.
      	* configure: Regenerate.
      	* po/POTFILES.in: Remove assert.h.
      
      	* libgcc-std.ver, libgcc2.c, libgcc2.h, sys-protos.h:
      	Remove __eprintf.
      
      	* config/t-freebsd, config/t-linux, config/t-linux-aout,
      	config/t-netbsd, config/t-rtems, config/x-linux,
      	config/i386/t-beos, config/mcore/t-mcore, config/mcore/t-mcore-pe:
      	No need to override INSTALL_ASSERT_H.
      
      	* fixinc/fixinc.dgux, fixinc/fixinc.interix, fixinc/fixinc.ptx,
      	fixinc/fixinc.svr4, fixinc/fixinc.winnt, fixinc/fixinc.wrap,
      	fixinc/fixincl.sh: Don't install assert.h into objdir/include.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41972 138bc75d-0d04-0410-961f-82ee72b054a4
      c872ef71
  17. 25 Apr, 2001 1 commit
  18. 28 Mar, 2001 1 commit
  19. 20 Mar, 2001 1 commit
  20. 24 Jan, 2001 1 commit
    • cgd's avatar
      2001-01-23 Chris Demetriou <cgd@broadcom.com> · c6deb130
      cgd authored
              * libgcc-std.ver (GCC_3.0): Add __terminate_func_set to list
              of EH symbols.
              * libgcc2.c (__terminate_func): Make variable static.
              (__terminate_set_func): New function to set __terminate_func.
              * libgcc2.h (__terminate_func_ptr): New typedef.
              (__terminate_set_func): New function.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@39224 138bc75d-0d04-0410-961f-82ee72b054a4
      c6deb130
  21. 01 Nov, 2000 1 commit
  22. 22 Oct, 2000 1 commit
  23. 06 Oct, 2000 1 commit
    • rth's avatar
      * Makefile.in (NM_FOR_TARGET): New. · 111349c7
      rth authored
              (libgcc.mk): Pass SHLIB_MKMAP, SHLIB_MAPFILES.
              (libgcc.a, stmp-multilib): Pass NM_FOR_TARGET.
              * mklibgcc.in: If SHLIB_MKMAP, build libgcc.map.  Depend the
              shared library build on that and EXTRA_MULTILIB_PARTS.
              * mkmap-flat.awk: New file.
              * mkmap-symver.awk: New file.
              * libgcc-std.ver: New file.
              * config/libgcc-glibc.ver: New file.
              * config/ia64/libgcc-ia64.ver: New file.
              * config/t-linux (SHLIB_MKMAP, SHLIB_MAPFILES): New.
              (SHLIB_LINK): Add --version-script.
              * config/ia64/t-ia64 (SHLIB_MAPFILES): Add libgcc-ia64.ver.
              * config/mips/t-iris6 (SHLIB_MKMAP, SHLIB_MAPFILES): New.
              * config/sparc/t-sol2 (SHLIB_MKMAP, SHLIB_MAPFILES): New.
              (SHLIB_LINK): Add -M.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@36746 138bc75d-0d04-0410-961f-82ee72b054a4
      111349c7