2003-05-16 Michael Snyder <msnyder@redhat.com>
From Bernd Schmidt <bernds@redhat.com> * archures.c (bfd_mach_h8300sx): New. * bfd-in2.h: Regenerate. * cpu-h8300.c (h8300_scan)): Add support for h8300sx. (h8300sx_info_struct): New. (h8300s_info_struct): Link to it. * elf32-h8300.c (elf32_h8_mach): Add support for h8300sx. (elf32_h8_final_write_processing): Likewise. (elf32_h8_relax_section): Likewise.
This commit is contained in:
parent
cf662e211d
commit
5d1db417ca
5 changed files with 48 additions and 3 deletions
|
@ -1,3 +1,14 @@
|
|||
2003-05-16 Michael Snyder <msnyder@redhat.com>
|
||||
From Bernd Schmidt <bernds@redhat.com>
|
||||
* archures.c (bfd_mach_h8300sx): New.
|
||||
* bfd-in2.h: Regenerate.
|
||||
* cpu-h8300.c (h8300_scan)): Add support for h8300sx.
|
||||
(h8300sx_info_struct): New.
|
||||
(h8300s_info_struct): Link to it.
|
||||
* elf32-h8300.c (elf32_h8_mach): Add support for h8300sx.
|
||||
(elf32_h8_final_write_processing): Likewise.
|
||||
(elf32_h8_relax_section): Likewise.
|
||||
|
||||
2003-05-16 Kelley Cook <kelleycook@wideopenwest.com>
|
||||
|
||||
* config.bfd: Accept i[3-7]86 variants.
|
||||
|
|
|
@ -169,6 +169,7 @@ DESCRIPTION
|
|||
.#define bfd_mach_h8300s 3
|
||||
.#define bfd_mach_h8300hn 4
|
||||
.#define bfd_mach_h8300sn 5
|
||||
.#define bfd_mach_h8300sx 6
|
||||
. bfd_arch_pdp11, {* DEC PDP-11 *}
|
||||
. bfd_arch_powerpc, {* PowerPC *}
|
||||
.#define bfd_mach_ppc 32
|
||||
|
|
|
@ -1635,6 +1635,7 @@ enum bfd_architecture
|
|||
#define bfd_mach_h8300s 3
|
||||
#define bfd_mach_h8300hn 4
|
||||
#define bfd_mach_h8300sn 5
|
||||
#define bfd_mach_h8300sx 6
|
||||
bfd_arch_pdp11, /* DEC PDP-11 */
|
||||
bfd_arch_powerpc, /* PowerPC */
|
||||
#define bfd_mach_ppc 32
|
||||
|
|
|
@ -81,6 +81,9 @@ h8300_scan (info, string)
|
|||
if (*string == 'n' || *string == 'N')
|
||||
return (info->mach == bfd_mach_h8300sn);
|
||||
|
||||
if (*string == 'x' || *string == 'X')
|
||||
return (info->mach == bfd_mach_h8300sx);
|
||||
|
||||
return (info->mach == bfd_mach_h8300s);
|
||||
}
|
||||
else
|
||||
|
@ -103,6 +106,22 @@ compatible (in, out)
|
|||
return in;
|
||||
}
|
||||
|
||||
static const bfd_arch_info_type h8300sx_info_struct =
|
||||
{
|
||||
32, /* 32 bits in a word */
|
||||
32, /* 32 bits in an address */
|
||||
8, /* 8 bits in a byte */
|
||||
bfd_arch_h8300,
|
||||
bfd_mach_h8300sx,
|
||||
"h8300sx", /* arch_name */
|
||||
"h8300sx", /* printable name */
|
||||
1,
|
||||
FALSE, /* the default machine */
|
||||
compatible,
|
||||
h8300_scan,
|
||||
0
|
||||
};
|
||||
|
||||
static const bfd_arch_info_type h8300sn_info_struct =
|
||||
{
|
||||
32, /* 32 bits in a word. */
|
||||
|
@ -116,7 +135,7 @@ static const bfd_arch_info_type h8300sn_info_struct =
|
|||
FALSE, /* The default machine. */
|
||||
compatible,
|
||||
h8300_scan,
|
||||
0
|
||||
&h8300sx_info_struct
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -579,6 +579,9 @@ elf32_h8_mach (flags)
|
|||
|
||||
case E_H8_MACH_H8300SN:
|
||||
return bfd_mach_h8300sn;
|
||||
|
||||
case E_H8_MACH_H8300SX:
|
||||
return bfd_mach_h8300sx;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -615,6 +618,10 @@ elf32_h8_final_write_processing (abfd, linker)
|
|||
case bfd_mach_h8300sn:
|
||||
val = E_H8_MACH_H8300SN;
|
||||
break;
|
||||
|
||||
case bfd_mach_h8300sx:
|
||||
val = E_H8_MACH_H8300SX;
|
||||
break;
|
||||
}
|
||||
|
||||
elf_elfheader (abfd)->e_flags &= ~ (EF_H8_MACH);
|
||||
|
@ -1023,7 +1030,10 @@ elf32_h8_relax_section (abfd, sec, link_info, again)
|
|||
&& value >= 0xff00
|
||||
&& value <= 0xffff)
|
||||
|| ((bfd_get_mach (abfd) == bfd_mach_h8300h
|
||||
|| bfd_get_mach (abfd) == bfd_mach_h8300s)
|
||||
/* FIXME: h8300hn? */
|
||||
|| bfd_get_mach (abfd) == bfd_mach_h8300s
|
||||
/* FIXME: h8300sn? */
|
||||
|| bfd_get_mach (abfd) == bfd_mach_h8300sx)
|
||||
&& value >= 0xffff00
|
||||
&& value <= 0xffffff))
|
||||
{
|
||||
|
@ -1081,7 +1091,10 @@ elf32_h8_relax_section (abfd, sec, link_info, again)
|
|||
&& value >= 0xff00
|
||||
&& value <= 0xffff)
|
||||
|| ((bfd_get_mach (abfd) == bfd_mach_h8300h
|
||||
|| bfd_get_mach (abfd) == bfd_mach_h8300s)
|
||||
/* FIXME: h8300hn? */
|
||||
|| bfd_get_mach (abfd) == bfd_mach_h8300s
|
||||
/* FIXME: h8300sn? */
|
||||
|| bfd_get_mach (abfd) == bfd_mach_h8300sx)
|
||||
&& value >= 0xffff00
|
||||
&& value <= 0xffffff))
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue