Skip to content
Snippets Groups Projects
  1. Jan 16, 2023
  2. Jan 03, 2022
  3. Jan 04, 2021
  4. Jan 01, 2020
  5. Apr 23, 2019
    • Ramana Radhakrishnan's avatar
      re PR target/89093 (C++ exception handling clobbers d8 VFP register) · 48528842
      Ramana Radhakrishnan authored
      
      	PR target/89093
      	* config/arm/arm.c (aapcs_vfp_is_call_or_return_candidate): Diagnose
      	if used with general-regs-only.
      	(arm_conditional_register_usage): Don't add non-general regs if
      	general-regs-only.
      	(arm_valid_target_attribute_rec): Handle general-regs-only.
      	* config/arm/arm.h (TARGET_HARD_FLOAT): Return false if
      	general-regs-only.
      	(TARGET_HARD_FLOAT_SUB): Define.
      	(TARGET_SOFT_FLOAT): Define as negation of TARGET_HARD_FLOAT_SUB.
      	(TARGET_REALLY_IWMMXT): Add && !TARGET_GENERAL_REGS_ONLY.
      	(TARGET_REALLY_IWMMXT2): Likewise.
      	* config/arm/arm.opt: Add -mgeneral-regs-only.
      	* doc/extend.texi: Document ARM general-regs-only target.
      	* doc/invoke.texi: Document ARM -mgeneral-regs-only.
      libgcc/
      	* config/arm/pr-support.c: Add #pragma GCC target("general-regs-only").
      	* config/arm/unwind-arm.c: Likewise.
      	* unwind-c.c (PERSONALITY_FUNCTION): Add general-regs-only target
      	attribute for ARM.
      libobjc/
      	* exception.c (PERSONALITY_FUNCTION): Add general-regs-only target
      	attribute for ARM.
      libphobos/
      	* libdruntime/gcc/deh.d: Import gcc.attribute.
      	(personality_fn_attributes): New enum.
      	(scanLSDA, CONTINUE_UNWINDING, gdc_personality, __gdc_personality):
      	Add @personality_fn_attributes.
      libstdc++-v3/
      	* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Add
      	general-regs-only target attribute for ARM.
      
      Co-Authored-By: default avatarBernd Edlinger <bernd.edlinger@hotmail.de>
      Co-Authored-By: default avatarJakub Jelinek <jakub@redhat.com>
      
      From-SVN: r270504
      48528842
  6. Jan 01, 2019
  7. Jan 03, 2018
  8. Jan 01, 2017
  9. Jan 04, 2016
  10. May 13, 2015
    • Eric Botcazou's avatar
      sjlj.m4: New file. · 9b92a9f3
      Eric Botcazou authored
      config/
      	* sjlj.m4: New file.
      libgcc/
      	* configure.ac: Include config/sjlj.m4.
      	Remove manual SJLJ check, add GCC_CHECK_SJLJ_EXCEPTIONS and adjust.
      	* config.in: Regenerate.
      	* configure: Likewise.
      	* config.host: Replace enable_sjlj_exceptions by ac_cv_sjlj_exceptions.
      libjava/
      	* configure.ac: Include config/sjlj.m4.
      	Remove manual SJLJ check, add GCC_CHECK_SJLJ_EXCEPTIONS and adjust.
      	* include/config.h.in: Regenerate.
      	* configure: Likewise.
      	* exception.cc: Replace SJLJ_EXCEPTIONS by __USING_SJLJ_EXCEPTIONS__.
      	* stacktrace.cc: Likewise.
      	* include/default-signal.h: Likewise.
      	* sysdep/i386/backtrace.h: Likewise.
      libobjc/
      	* configure.ac: Remove manual SJLJ check.
      	* config.h.in: Regenerate.
      	* configure: Likewise.
      	* exception.c: Replace SJLJ_EXCEPTIONS by __USING_SJLJ_EXCEPTIONS__.
      libstdc++-v3/
      	* acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Delete.
      	* configure.ac: Remove GLIBCXX_ENABLE_SJLJ_EXCEPTIONS.
      	* config.h.in: Regenerate.
      	* configure: Likewise.
      	* libsupc++/eh_personality.cc: Replace _GLIBCXX_SJLJ_EXCEPTIONS by
      	__USING_SJLJ_EXCEPTIONS__.
      	* libsupc++/eh_throw.cc: Likewise.
      	* libsupc++/eh_ptr.cc: Likewise.
      	* doc/html/manual/appendix_porting.html: Remove
      	GLIBCXX_ENABLE_SJLJ_EXCEPTIONS
      	* doc/xml/manual/build_hacking.xml: Likewise.
      	* doc/html/manual/configure.html: Remove --enable-sjlj-exceptions.
      	* doc/xml/manual/configure.xml: Likewise.
      
      From-SVN: r223181
      9b92a9f3
  11. Jan 05, 2015
  12. Jan 02, 2014
  13. Jul 04, 2013
  14. Feb 03, 2013
  15. Jul 19, 2012
    • Tristan Gingold's avatar
      eh_personality.cc (__gxx_personality_seh0): New function. · bf1431e3
      Tristan Gingold authored
      
      libstdc++-v3/
      	* libsupc++/eh_personality.cc (__gxx_personality_seh0): New function.
      	Adjust for SEH.
      	* config/abi/pre/gnu.ver: Add __gxx_personality_seh0.
      
      libobjc/
      	* exception.c (__gnu_objc_personality_seh0): New function.
      
      libjava/
      	* libgcj.ver: Add __gcj_personality_seh0.
      	* exception.cc (__gcj_personality_seh0): New function.
      	Adjust for SEH.
      
      libgcc/
      	* unwind-seh.c: New file.
      	* unwind-generic.h: Include windows.h for SEH.
      	(_Unwind_Exception): Use 6 private fields for SEH.
      	(_GCC_specific_handler): Declare.
      	* unwind-c.c (__gcc_personality_seh0): New function.
      	Adjust for SEH.
      	* config/i386/libgcc-cygming.ver: New file.
      	* config/i386/t-seh-eh: New file.
      	* config.host (x86_64-*-mingw*): Default to seh.
      
      gcc/
      	* opts.c (finish_options): Handle UI_SEH.
      	* expr.c (build_personality_function): Handle UI_SEH.
      	* dwarf2out.c (dwarf2out_begin_prologue): Handle UI_SEH.
      	* coretypes.h (unwind_info_type): Add UI_SEH.
      	* config/i386/winnt.c (i386_pe_seh_emit_except_personality):
      	New function.
      	(i386_pe_seh_init_sections): Likewise.
      	* config/i386/cygming.h (TARGET_ASM_EMIT_EXCEPT_PERSONALITY): Define.
      	(TARGET_ASM_INIT_SECTIONS): Define.
      	* common/config/i386/i386-common.c (TARGET_EXCEPT_UNWIND_INFO): Define.
      	(i386_except_unwind_info): New function.
      
      
      Co-Authored-By: default avatarRichard Henderson <rth@redhat.com>
      
      From-SVN: r189644
      bf1431e3
  16. Oct 20, 2011
  17. Jun 03, 2011
    • Nicola Pero's avatar
      In libobjc/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com> · 309ce401
      Nicola Pero authored
      In libobjc/:
      2011-06-03  Nicola Pero  <nicola.pero@meta-innovation.com>
      
      	* Makefile.in (OBJC_DEPRECATED_H): Removed objc_valloc.h,
      	objc_malloc.h and objc_unexpected_exception.h.
      	(exception.lo): Do not use -Wno-deprecated-declarations.
      	(exception_gc.lo): Likewise.
      	* objc/objc-api.h: Do not include deprecated/objc_valloc.h,
      	deprecated/objc_malloc.h and
      	deprecated/objc_unexpected_exception.h.
      	* objc/deprecated/objc_valloc.h: Removed.
      	* objc/deprecated/objc_malloc.h: Removed.
      	* objc/deprecated/objc_unexpected_exception.h: Removed.
      	* exception.c (_objc_unexpected_exception): Removed.
      	(objc_exception_throw): Do not check for
      	_objc_unexpected_exception.
      	* memory.c (objc_valloc, _objc_malloc, _objc_atomic_malloc,
      	_objc_valloc, _objc_realloc, _objc_calloc, _objc_free): Removed.	
      	* libobjc.def (_objc_unexpected_exception, objc_valloc): Removed.
      
      From-SVN: r174615
      309ce401
  18. Dec 18, 2010
    • Nicola Pero's avatar
      In libobjc/: 2010-12-18 Nicola Pero <nicola.pero@meta-innovation.com> · 575584a9
      Nicola Pero authored
      In libobjc/:
      2010-12-18  Nicola Pero  <nicola.pero@meta-innovation.com>
      
      	* class.c: Tidied up comments and indentation.  No code changes.
      	* error.c: Same.
      	* exception.c: Same.
      	* init.c: Same.
      	* ivars.c: Same.
      	* memory.c: Same.
      	* objc-foreach.c: Same.
      	* objc-sync.c: Same.
      	* objects.c: Same.
      	* protocols.c: Same.
      	* sarray.c: Same.
      	* thr.c: Same.
      
      From-SVN: r168022
      575584a9
  19. Oct 12, 2010
    • Nicola Pero's avatar
      In libobjc/: 2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com> · be05b0f5
      Nicola Pero authored
      In libobjc/:
      2010-10-12  Nicola Pero  <nicola.pero@meta-innovation.com>
      
              * class.c: Include objc/runtime.h and objc-private/module-abi-8.h
              instead of objc/objc-api.h.
              (objc_get_unknown_class_handler): Do not define.
              (class_isMetaClass): New.
              (class_getSuperclass): New.
              (class_getVersion): New.
              (class_setVersion): New.
              (class_getInstanceSize): New.
              * exceptions.c: Include objc/runtime.h instead of objc/objc-api.h.
              (is_kind_of_exception_matcher): Use objc_getSuperclass instead of
              objc_get_super_class.
              (get_ttype_entry): Use objc_getRequiredClass instead of
              objc_get_class.
              * ivars.c (class_getClassVariable): New.
              * objects.c: Include objc/runtime.h, objc/thr.h and
              objc-private/module-abi-8.h instead of objc/objc-api.h
              * objc/runtime.h (class_getClassVariable): New.
              (class_isMetaClass): New.
              (class_getSuperclass): New.
              (class_getVersion): New.
              (class_setVersion): New.
              (class_getInstanceSize): New.
              * objc-private/module-abi-8.h (HOST_BITS_PER_LONG): New (from
              objc/objc-api.h)
              (__CLS_INFO): Same.
              (__CLS_ISINFO): Same.
              (__CLS_SETINFO): Same.
              (CLS_ISMETA): Same.
              (CLS_ISCLASS): Same.
              (CLS_ISRESOLV): Same.
              (CLS_SETRESOLV): Same.
              (CLS_ISINITIALIZED): Same.
              (CLS_SETINITIALIZED): Same.
              (CLS_GETNUMBER): Same.
              (CLS_SETNUMBER): Same.
      
      From-SVN: r165392
      be05b0f5
  20. Oct 10, 2010
    • Nicola Pero's avatar
      In libobjc/: 2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com> · 2461ab4b
      Nicola Pero authored
      In libobjc/:
      2010-10-10  Nicola Pero  <nicola.pero@meta-innovation.com>
      
              * Makefile.in (OBJC_DEPRECATED_H): Added struct_objc_category.h,
              struct_objc_ivar.h, struct_objc_ivar_list.h, struct_objc_method.h,
              struct_objc_method_list.h, struct_objc_module.h,
              struct_objc_protocol_list.h, struct_objc_symtab.h.
              * objc/deprecated/struct_objc_category.h: New.
              * objc/deprecated/struct_objc_ivar.h: New.
              * objc/deprecated/struct_objc_ivar_list.h: New.
              * objc/deprecated/struct_objc_method.h: New.
              * objc/deprecated/struct_objc_method_list.h: New.
              * objc/deprecated/struct_objc_module.h: New.
              * objc/deprecated/struct_objc_protocol_list.h: New.
              * objc/deprecated/struct_objc_symtab.h: New.
              * objc/deprecated/struct_objc_static_instances.h: New.
              * objc/objc-api.h: Definitions of deprecated structures moved into
              the above header fragment files in objc/deprecated/.  Include the
              files instead of definition the structures here.  Updated
              comments.
              * objc/runtime.h: Updated comments.  Do not include objc-api.h.
              (objc_set_enumeration_mutation_handler): Renamed to
              objc_setEnumerationMutationHandler.
              * objc-foreach.c (objc_set_enumeration_mutation_handler): Renamed
              to objc_setEnumerationMutationHandler.
              * objc/objc-exception.h (objc_set_exception_matcher): Renamed to
              objc_setExceptionMatcher.
              (objc_set_uncaught_exception_handler): Renamed to
              objc_setUncaughtExceptionHandler.
              * exception.c: Same changes.
      
      From-SVN: r165249
      2461ab4b
  21. Sep 17, 2010
    • Nicola Pero's avatar
      In libobjc/: · 5be9cdc1
      Nicola Pero authored
              * objc/hash.h: Moved into objc/deprecated/hash.h; objc/hash.h
              replaced with a placeholder including the file from the
              deprecated/ directory.
              * objc/objc-api.h: Updated includes.
              * objc/typedstream.h: Updated includes.
              * objc-private/hash.h: New file (private copy of hash.h).
              * objc/objc-list.h: Moved into objc/deprecated/objc-list.h;
              objc/objc-list.h replaced with a placeholder including the file
              from the deprecated/ directory.
              * objc-private/objc-list.h: New file (private copy of objc-list.h).
              * init.c: Include objc-private/hash.h and objc-private/objc-list.h
              instead of objc/hash.h and objc/objc-list.h.
              * selector.c: Same change.
              * class.c: Added include <string.h>, which used to be implicitly included
              when hash.h was included.
              * exception.c: Same change.
              * objects.c: Same change.
              * sarray.c: Same change.
              * sendmsg.c: Same change.
              * Makefile.in (OBJC_DEPRECATED_H): Added hash.h and objc-list.h.
              (OBJC_H): Removed hash.h and objc-list.h
      
      From-SVN: r164373
      5be9cdc1
  22. Sep 11, 2010
    • Nicola Pero's avatar
      In libobjc/: · 6dead247
      Nicola Pero authored
             * objc/objc.h (__GNU_LIBOBJC__): New #define providing an easy way
              to check the API version.  Added some comments.
      
              * objc-private/common.h: New file.
              * NXConstStr.m: Include objc-private/common.h.
              * Object.m: Same change.
              * Protocol.m: Same change.
              * archive.c: Same change.
              * class.c: Same change.
              * encoding.c: Same change.
              * exception.c: Same change.
              * gc.c: Same change.
              * hash.c: Same change.
              * init.c: Same change.
              * libobjc_entry.c: Same change.
              * linking.m: Same change.
              * misc.c: Same change (and added a comment).
              * nil_method.c: Same change.
              * objects.c: Same change.
              * sarray.c: Same change.
              * selector.c: Same change.
              * sendmsg.c: Same change.
              * thr.c: Same change.
      
      From-SVN: r164218
      6dead247
  23. Sep 08, 2010
    • Nicola Pero's avatar
      objc-exception.h: New file. · e30511ed
      Nicola Pero authored
      	* objc/objc-exception.h: New file.
      	* exception.c (objc_set_uncaught_exception_handler): Implemented.
      	(objc_set_exception_matcher): Implemented.
      	(objc_exception_throw): Use the uncaught exception handler if set.
      	(PERSONALITY_FUNCTION): Use the exception matcher instead of the
      	hardcoded isKindOf.
      	(isKindOf): Renamed to is_kind_of_exception_matcher.  Tidied code
      	up.  Removed segmentation fault when value is 'nil'.
      	* objc/objc-api.h (_objc_unexpected_exception): Mark as
      	deprecated.
      	* Makefile.in (exception.lo, exception_gc.lo): Use
      	-Wno-deprecated-declarations when compiling.
      	(OBJC_H): Added objc-exception.h
      
      From-SVN: r164023
      e30511ed
  24. Apr 09, 2009
  25. Mar 12, 2009
    • David Ayers's avatar
      re PR libobjc/27466 (RFE: Support for libobjc equivalent of std::set_unexpected) · faef499b
      David Ayers authored
      libobjc/
      
      2009-03-12  Richard Frith-Macdonald  <rfm@gnu.org>
      	    David Ayers  <ayers@fsfe.org>
      
      	PR libobjc/27466
      	* objc/objc-api.h (_objc_unexpected_exception): Declare
      	new hook.  Update copyright dates.
      	* exception.c (objc_exception_throw): Use hook.  Update
      	copyright dates.
      	* libobjc.def (_objc_unexpected_exception): Export hook.
      	Update copyright dates.
      	
      gcc/testsuite/
      
      2009-03-12  David Ayers  <ayers@fsfe.org>
      
      	PR libobjc/27466
      	* objc/execute/exceptions/handler-1.m. New test.
      
      From-SVN: r144826
      faef499b
  26. Jun 14, 2008
  27. May 30, 2008
    • Julian Brown's avatar
      configure.ac (arm*-*-linux-gnueabi): Don't disable building of libobjc for ARM EABI Linux. · 3f6383d3
      Julian Brown authored
          * configure.ac (arm*-*-linux-gnueabi): Don't disable building
          of libobjc for ARM EABI Linux.
          * configure: Regenerate.
      
          libobjc/
          * exception.c (__objc_exception_class): Initialise as constant
          array for ARM EABI. Change macro to static const for non-ARM EABI.
          (ObjcException): Add note about structure layout. Remove landingPad
          and handlerSwitchValue for ARM EABI.
          (get_ttype_entry): Add __ARM_EABI_UNWINDER__ version
          of function.
          (CONTINUE_UNWINDING): Define for ARM EABI/otherwise cases.
          (PERSONALITY_FUNCTION): Use ARM EABI-specific arguments, and add
          ARM EABI unwinding support.
          (objc_exception_throw): Use memcpy to initialise exception class.
      
      From-SVN: r136215
      3f6383d3
  28. Aug 06, 2007
  29. Aug 17, 2005
  30. Aug 14, 2005
    • Marcin Koziej's avatar
      re PR libobjc/22492 ([PATCH] Abort after @finally: libobjc passing exception... · ee1658f3
      Marcin Koziej authored
      re PR libobjc/22492 ([PATCH] Abort after @finally: libobjc passing exception value instead of exception.)
      
      libobjc/ChangeLog:
      
      2005-08-13  Marcin Koziej  <creep@desk.pl>
                  Andrew Pinski  <pinskia@physics.uc.edu>
      
      	PR libobjc/22492
      	* exception.c (PERSONALITY_FUNCTION): Fix the PC with finally.
      
      testsuite/ChangeLog:
      2005-08-13  Marcin Koziej  <creep@desk.pl>
                  Andrew Pinski  <pinskia@physics.uc.edu>
      
      	PR libobjc/22492
      	* execute/exceptions/finally-1.m: New test.
      
      Co-Authored-By: default avatarAndrew Pinski <pinskia@physics.uc.edu>
      
      From-SVN: r103073
      ee1658f3
  31. May 20, 2005
  32. May 19, 2005
  33. Oct 01, 2004
    • Andrew Pinski's avatar
      re PR libobjc/16448 (FAIL: objc/execute/IMP.m compilation, -O0) · 049bc404
      Andrew Pinski authored
      2004-09-16  Andrew Pinski  <pinskia@physics.uc.edu>
      
              PR libobjc/16448
              * exception.c: Include config.h
              (objc_exception_throw): Change _GLIBCXX_SJLJ_EXCEPTIONS to
              SJLJ_EXCEPTIONS.
              * configure.ac: Find out what exception handling code we use.
              * configure: Regenerate.
              * config.h.in: New file, regenerate.
      
      From-SVN: r88379
      049bc404
  34. Jun 18, 2004
Loading