Fix linux kernel unwind section alignment failure.
authorJim Wilson <wilson@tuliptree.org>
Wed, 22 Nov 2000 02:10:34 +0000 (02:10 +0000)
committerJim Wilson <wilson@tuliptree.org>
Wed, 22 Nov 2000 02:10:34 +0000 (02:10 +0000)
* config/tc-ia64.c (generate_unwind_image): Call record_alignment
for unwind info section.
(dot_endp): Likewise for unwind section.

gas/ChangeLog
gas/config/tc-ia64.c

index dd97b0e29ea3fb32abc575104de6370374d1e383..71370dc1dca3ba7e761d91db4926a9f29346fbe3 100644 (file)
@@ -1,5 +1,9 @@
 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.
+
        * config/tc-ia64.c (emit_one_bundle): Pass size of 8 not 4 to
        fix_new_exp.
 
index 659ad411d4699e6ae6761841eb29d93a8ac0814e..faeb75d1053740712ada524d88f013a336000ddc 100644 (file)
@@ -3057,6 +3057,9 @@ generate_unwind_image ()
       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 ();
 
@@ -3684,6 +3687,10 @@ dot_endp (dummy)
   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;