diff options
| -rw-r--r-- | gcc/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/varasm.c | 7 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5884c5fb0e6..6a3858c1de9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,10 @@ 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... * except.c (default_exception_section): ... here. Make .gcc_except_table read-only if it is not expected to have any diff --git a/gcc/varasm.c b/gcc/varasm.c index a3d283a8b56..db7599e7212 100644 --- a/gcc/varasm.c +++ b/gcc/varasm.c @@ -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 |

