This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch] ia64: clear out .IA_64.unwind section elements


In order to allow for reproducable builds, clear out the contents of the
three pointers allocated per function in .IA_64.unwind.

Built and tested on ia64-unknown-linux-gnu.

Jan

gas/
2005-05-20  Jan Beulich  <jbeulich@novell.com>

	* config/tc-ia64.c (dot_endp): Clear out all three pointers in unwind
	section entry.

--- /home/jbeulich/src/binutils/mainline/2005-05-18/gas/config/tc-ia64.c	2005-05-09 08:31:38.000000000 +0200
+++ 2005-05-18/gas/config/tc-ia64.c	2005-05-20 17:11:14.812836238 +0200
@@ -4387,7 +4344,6 @@ dot_endp (dummy)
      int dummy ATTRIBUTE_UNUSED;
 {
   expressionS e;
-  char *ptr;
   int bytes_per_address;
   long where;
   segT saved_seg;
@@ -4434,7 +4390,7 @@ dot_endp (dummy)
 
       /* Need space for 3 pointers for procedure start, procedure end,
 	 and unwind info.  */
-      ptr = frag_more (3 * md.pointer_size);
+      memset (frag_more (3 * md.pointer_size), 0, 3 * md.pointer_size);
       where = frag_now_fix () - (3 * md.pointer_size);
       bytes_per_address = bfd_arch_bits_per_address (stdoutput) / 8;
 
@@ -4461,10 +4417,6 @@ dot_endp (dummy)
 	  ia64_cons_fix_new (frag_now, where + (bytes_per_address * 2),
 			     bytes_per_address, &e);
 	}
-      else
-	md_number_to_chars (ptr + (bytes_per_address * 2), 0,
-			    bytes_per_address);
-
     }
   subseg_set (saved_seg, saved_subseg);
 


Attachment: binutils-mainline-ia64-unwind-clear.patch
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]