svn commit: r247386 - head/contrib/binutils/gas/config

Andrew Turner andrew at FreeBSD.org
Wed Feb 27 06:53:17 UTC 2013


Author: andrew
Date: Wed Feb 27 06:53:15 2013
New Revision: 247386
URL: http://svnweb.freebsd.org/changeset/base/247386

Log:
  Clear the memory allocated to build the unwind tables. This fixes C++
  exceptions on ARM EABI with static binaries.

Modified:
  head/contrib/binutils/gas/config/tc-arm.c

Modified: head/contrib/binutils/gas/config/tc-arm.c
==============================================================================
--- head/contrib/binutils/gas/config/tc-arm.c	Wed Feb 27 06:12:50 2013	(r247385)
+++ head/contrib/binutils/gas/config/tc-arm.c	Wed Feb 27 06:53:15 2013	(r247386)
@@ -3079,6 +3079,7 @@ s_arm_unwind_fnend (int ignored ATTRIBUT
   record_alignment (now_seg, 2);
 
   ptr = frag_more (8);
+  memset(ptr, 0, 8);
   where = frag_now_fix () - 8;
 
   /* Self relative offset of the function start.  */
@@ -17350,6 +17351,7 @@ create_unwind_entry (int have_data)
 
   /* Allocate the table entry.	*/
   ptr = frag_more ((size << 2) + 4);
+  memset(ptr, 0, (size << 2) + 4);
   where = frag_now_fix () - ((size << 2) + 4);
 
   switch (unwind.personality_index)


More information about the svn-src-head mailing list