950 |
} |
} |
951 |
else |
else |
952 |
{ |
{ |
953 |
/* Any section that was original placed AFTER the bss |
/* Any section that was originally placed after the .bss |
954 |
section should now be off by NEW_DATA2_SIZE. */ |
section should now be off by NEW_DATA2_SIZE. If a |
955 |
|
section overlaps the .bss section, consider it to be |
956 |
|
placed after the .bss section. Overlap can occur if the |
957 |
|
section just before .bss has less-strict alignment; this |
958 |
|
was observed between .symtab and .bss on Solaris 2.5.1 |
959 |
|
(sparc) with GCC snapshot 960602. */ |
960 |
#ifdef SOLARIS_POWERPC |
#ifdef SOLARIS_POWERPC |
961 |
/* On PPC Reference Platform running Solaris 2.5.1 |
/* On PPC Reference Platform running Solaris 2.5.1 |
962 |
the plt section is also of type NOBI like the bss section. |
the plt section is also of type NOBI like the bss section. |
970 |
>= OLD_SECTION_H (old_bss_index-1).sh_offset) |
>= OLD_SECTION_H (old_bss_index-1).sh_offset) |
971 |
NEW_SECTION_H (nn).sh_offset += new_data2_size; |
NEW_SECTION_H (nn).sh_offset += new_data2_size; |
972 |
#else |
#else |
973 |
if (round_up (NEW_SECTION_H (nn).sh_offset, |
if (NEW_SECTION_H (nn).sh_offset + NEW_SECTION_H (nn).sh_size |
974 |
OLD_SECTION_H (old_bss_index).sh_addralign) |
> new_data2_offset) |
|
>= new_data2_offset) |
|
975 |
NEW_SECTION_H (nn).sh_offset += new_data2_size; |
NEW_SECTION_H (nn).sh_offset += new_data2_size; |
976 |
#endif |
#endif |
977 |
/* Any section that was originally placed after the section |
/* Any section that was originally placed after the section |