1. 19 May, 2014 22 commits
  2. 18 May, 2014 15 commits
  3. 17 May, 2014 3 commits
    • comment ggc_handle_finalizers · c3af645c
      	* ggc-page.c (ggc_handle_finalizers): Add comment.
      
      From-SVN: r210569
      Trevor Saunders committed
    • add finalizers to ggc · de49ce19
      This implements finalizers by keeping a list of registered finalizers
      and after every mark but before sweeping check to see if any of them are
      for unmarked blocks.
      
      gcc/ChangeLog:
      
      	* ggc-common.c (ggc_internal_cleared_alloc): Adjust.
      	* ggc-none.c (ggc_internal_alloc): Assert if a finalizer is passed.
      	(ggc_internal_cleared_alloc): Likewise.
      	* ggc-page.c (finalizer): New class.
      (vec_finalizer): Likewise.
      	(globals::finalizers): New member.
      (globals::vec_finalizers): Likewise.
      	(ggc_internal_alloc): Record the finalizer if any for the block being
      	allocated.
      	(ggc_handle_finalizers): New function.
      	(ggc_collect): Call ggc_handle_finalizers.
      	* ggc.h (ggc_internal_alloc): Add arguments to allow installing a
      	finalizer.
      	(ggc_internal_cleared_alloc): Likewise.
      	(finalize): New function.
      	(need_finalization_p): Likewise.
      	(ggc_alloc): Install the type's destructor as the finalizer if it
      	might do something.
      	(ggc_cleared_alloc): Likewise.
      	(ggc_vec_alloc): Likewise.
      	(ggc_cleared_vec_alloc): Likewise.
      
      From-SVN: r210568
      Trevor Saunders committed
    • remove unused function · 04eec987
      gcc/ChangeLog:
      
      	*ggc.h (ggc_alloc_cleared_simd_clone_stat): Remove function.
      
      From-SVN: r210567
      Trevor Saunders committed