}
static void
-_bfd_xcoff64_swap_aux_in (abfd, ext1, type, class, indx, numaux, in1)
+_bfd_xcoff64_swap_aux_in (abfd, ext1, type, in_class, indx, numaux, in1)
bfd *abfd;
PTR ext1;
int type;
- int class;
+ int in_class;
int indx;
int numaux;
PTR in1;
union external_auxent *ext = (union external_auxent *) ext1;
union internal_auxent *in = (union internal_auxent *) in1;
- switch (class)
+ switch (in_class)
{
case C_FILE:
if (ext->x_file.x_n.x_zeroes[0] == 0)
/* RS/6000 "csect" auxents */
case C_EXT:
+ case C_AIX_WEAKEXT:
case C_HIDEXT:
if (indx + 1 == numaux)
{
break;
}
- if (class == C_BLOCK || class == C_FCN || ISFCN (type) || ISTAG (class))
+ if (in_class == C_BLOCK || in_class == C_FCN || ISFCN (type)
+ || ISTAG (in_class))
{
in->x_sym.x_fcnary.x_fcn.x_lnnoptr
= H_GET_64 (abfd, ext->x_sym.x_fcnary.x_fcn.x_lnnoptr);
}
static unsigned int
-_bfd_xcoff64_swap_aux_out (abfd, inp, type, class, indx, numaux, extp)
+_bfd_xcoff64_swap_aux_out (abfd, inp, type, in_class, indx, numaux, extp)
bfd *abfd;
PTR inp;
int type;
- int class;
+ int in_class;
int indx ATTRIBUTE_UNUSED;
int numaux ATTRIBUTE_UNUSED;
PTR extp;
union external_auxent *ext = (union external_auxent *) extp;
memset ((PTR) ext, 0, bfd_coff_auxesz (abfd));
- switch (class)
+ switch (in_class)
{
case C_FILE:
if (in->x_file.x_n.x_zeroes == 0)
/* RS/6000 "csect" auxents */
case C_EXT:
+ case C_AIX_WEAKEXT:
case C_HIDEXT:
if (indx + 1 == numaux)
{
break;
}
- if (class == C_BLOCK || class == C_FCN || ISFCN (type) || ISTAG (class))
+ if (in_class == C_BLOCK || in_class == C_FCN || ISFCN (type)
+ || ISTAG (in_class))
{
H_PUT_64 (abfd, in->x_sym.x_fcnary.x_fcn.x_lnnoptr,
ext->x_sym.x_fcnary.x_fcn.x_lnnoptr);
going to global linkage code, we can replace the load with a
cror. */
if (NULL != h
- && bfd_link_hash_defined == h->root.type
+ && (bfd_link_hash_defined == h->root.type
+ || bfd_link_hash_defweak == h->root.type)
&& section_offset + 8 <= input_section->size)
{
bfd_byte *pnext;
howto->dst_mask = howto->src_mask;
if (h != NULL
- && h->root.type == bfd_link_hash_defined
+ && (h->root.type == bfd_link_hash_defined
+ || h->root.type == bfd_link_hash_defweak)
&& bfd_is_abs_section (h->root.u.def.section)
&& section_offset + 4 <= input_section->size)
{
bfd_generic_is_group_section,
bfd_generic_discard_group,
_bfd_generic_section_already_linked,
+ _bfd_xcoff_define_common_symbol,
/* Dynamic */
_bfd_xcoff_get_dynamic_symtab_upper_bound,
bfd_generic_is_group_section,
bfd_generic_discard_group,
_bfd_generic_section_already_linked,
+ _bfd_xcoff_define_common_symbol,
/* Dynamic */
_bfd_xcoff_get_dynamic_symtab_upper_bound,