+ if (htab->elf.sgot && s390_gotplt_after_got_p (info))
+ {
+ /* _bfd_elf_create_got_section adds the got header size always
+ to .got.plt but we need it in .got if this section comes
+ first. */
+ htab->elf.sgot->size += 3 * GOT_ENTRY_SIZE;
+ htab->elf.sgotplt->size -= 3 * GOT_ENTRY_SIZE;
+
+ /* Make the _GLOBAL_OFFSET_TABLE_ symbol point to the .got
+ instead of .got.plt. */
+ htab->elf.hgot->root.u.def.section = htab->elf.sgot;
+ htab->elf.hgot->root.u.def.value = 0;
+ }
+