]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
varasm.c (output_constant_pool): For pool constants in mergeable section ensure each...
authorJakub Jelinek <jakub@redhat.com>
Tue, 26 Nov 2002 12:36:09 +0000 (13:36 +0100)
committerJakub Jelinek <jakub@gcc.gnu.org>
Tue, 26 Nov 2002 12:36:09 +0000 (13:36 +0100)
* varasm.c (output_constant_pool): For pool constants in mergeable
section ensure each constant is padded to multiple of entity size.

From-SVN: r59508

gcc/ChangeLog
gcc/varasm.c

index 5884c5fb0e6895d674e6d3005168853470f354d7..6a3858c1de9816a4990edcd62e017197a0120606 100644 (file)
@@ -1,3 +1,8 @@
+2002-11-26  Jakub Jelinek  <jakub@redhat.com>
+
+       * varasm.c (output_constant_pool): For pool constants in mergeable
+       section ensure each constant is padded to multiple of entity size.
+
 2002-11-26  Jakub Jelinek  <jakub@redhat.com>
 
        * varasm.c (default_exception_section): Move to...
index a3d283a8b56290c95642da5c2fdd14072807821f..db7599e7212875957f2a402138d332292ac3c4be 100644 (file)
@@ -3499,6 +3499,13 @@ output_constant_pool (fnname, fndecl)
          abort ();
        }
 
+      /* Make sure all constants in SECTION_MERGE and not SECTION_STRINGS
+        sections have proper size.  */
+      if (pool->align > GET_MODE_BITSIZE (pool->mode)
+         && in_section == in_named
+         && get_named_section_flags (in_named_name) & SECTION_MERGE)
+       assemble_align (pool->align);
+
 #ifdef ASM_OUTPUT_SPECIAL_POOL_ENTRY
     done: ;
 #endif