mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-24 20:28:28 +08:00
* elf32-m68k.c (bfd_elf_m68k_set_target_options): Don't set GOT
options unless an m68k hash table has been found.
This commit is contained in:
@ -1,3 +1,8 @@
|
||||
2010-08-20 Maciej W. Rozycki <macro@codesourcery.com>
|
||||
|
||||
* elf32-m68k.c (bfd_elf_m68k_set_target_options): Don't set GOT
|
||||
options unless an m68k hash table has been found.
|
||||
|
||||
2010-08-20 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
* merge.c (sec_merge_emit): Do not zero pad sections that do not
|
||||
|
@ -4745,34 +4745,44 @@ void
|
||||
bfd_elf_m68k_set_target_options (struct bfd_link_info *info, int got_handling)
|
||||
{
|
||||
struct elf_m68k_link_hash_table *htab;
|
||||
|
||||
htab = elf_m68k_hash_table (info);
|
||||
bfd_boolean use_neg_got_offsets_p;
|
||||
bfd_boolean allow_multigot_p;
|
||||
bfd_boolean local_gp_p;
|
||||
|
||||
switch (got_handling)
|
||||
{
|
||||
case 0:
|
||||
/* --got=single. */
|
||||
htab->local_gp_p = FALSE;
|
||||
htab->use_neg_got_offsets_p = FALSE;
|
||||
htab->allow_multigot_p = FALSE;
|
||||
local_gp_p = FALSE;
|
||||
use_neg_got_offsets_p = FALSE;
|
||||
allow_multigot_p = FALSE;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
/* --got=negative. */
|
||||
htab->local_gp_p = TRUE;
|
||||
htab->use_neg_got_offsets_p = TRUE;
|
||||
htab->allow_multigot_p = FALSE;
|
||||
local_gp_p = TRUE;
|
||||
use_neg_got_offsets_p = TRUE;
|
||||
allow_multigot_p = FALSE;
|
||||
break;
|
||||
|
||||
case 2:
|
||||
/* --got=multigot. */
|
||||
htab->local_gp_p = TRUE;
|
||||
htab->use_neg_got_offsets_p = TRUE;
|
||||
htab->allow_multigot_p = TRUE;
|
||||
local_gp_p = TRUE;
|
||||
use_neg_got_offsets_p = TRUE;
|
||||
allow_multigot_p = TRUE;
|
||||
break;
|
||||
|
||||
default:
|
||||
BFD_ASSERT (FALSE);
|
||||
return;
|
||||
}
|
||||
|
||||
htab = elf_m68k_hash_table (info);
|
||||
if (htab != NULL)
|
||||
{
|
||||
htab->local_gp_p = local_gp_p;
|
||||
htab->use_neg_got_offsets_p = use_neg_got_offsets_p;
|
||||
htab->allow_multigot_p = allow_multigot_p;
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user