Re: [Linux-ia64] 001117 toolchain release

From: Jim Wilson <wilson_at_cygnus.com>
Date: 2000-11-22 13:18:50
Why 16 bytes?  The sections only have 8 byte data.  (Technically, the unwind
section has 4 byte data for the 32-bit ABI, but I'm ignoring that for now.)

I added this patch to the FSF binutils sources to fix the problem.  I am not
planning to add a patch for the 001117 release, since this doesn't seem to
be a serious enough problem.

2000-11-21  Jim Wilson  <wilson@redhat.com>

	* config/tc-ia64.c (generate_unwind_image): Call record_alignment
	for unwind info section.
	(dot_endp): Likewise for unwind section.

Index: tc-ia64.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-ia64.c,v
retrieving revision 1.33
diff -p -r1.33 tc-ia64.c
*** tc-ia64.c	2000/11/22 01:12:05	1.33
--- tc-ia64.c	2000/11/22 02:01:42
*************** generate_unwind_image ()
*** 3057,3062 ****
--- 3057,3065 ----
        expressionS exp;
        set_section ((char *) special_section_name[SPECIAL_SECTION_UNWIND_INFO]);
  
+       /* Make sure the section has 8 byte alignment.  */
+       record_alignment (now_seg, 3);
+ 
        /* Set expression which points to start of unwind descriptor area.  */
        unwind.info = expr_build_dot ();
  
*************** dot_endp (dummy)
*** 3684,3689 ****
--- 3687,3696 ----
    unwind.proc_end = expr_build_dot ();
  
    set_section ((char *) special_section_name[SPECIAL_SECTION_UNWIND]);
+ 
+   /* Make sure the section has 8 byte alignment.  */
+   record_alignment (now_seg, 3);
+ 
    ptr = frag_more (24);
    where = frag_now_fix () - 24;
    bytes_per_address = bfd_arch_bits_per_address (stdoutput) / 8;
Received on Tue Nov 21 18:16:43 2000

This archive was generated by hypermail 2.1.8 : 2005-08-02 09:20:00 EST