Fix little endian relocs

This commit is contained in:
Nick Clifton 2000-05-03 18:50:55 +00:00
parent 86110418ab
commit eaa15ab811
2 changed files with 24 additions and 25 deletions

View File

@ -1,3 +1,8 @@
2000-05-03 Rodney Brown <RodneyBrown@pmsc.com>
config/tc-mcore.c (md_apply_fix3): BFD_RELOC_MCORE_PCREL_IMM11BY2
Fix little-endian case.
2000-05-03 David O'Brien <obrien@NUXI.com>
* as.c (parse_args): Update copyright.
@ -455,7 +460,7 @@ Mon Apr 3 13:56:03 2000 Hans-Peter Nilsson <hp@axis.com>
2000-03-19 Nick Clifton <nickc@cygnus.com>
* config/tc-arm.c (md_apply_fix3): Fix bug detectng overflow of pc
* config/tc-arm.c (md_apply_fix3): Fix bug detecting overflow of pc
relative branches.
2000-03-17 Thomas de Lellis <tdel@windriver.com>
@ -551,8 +556,6 @@ Sat Mar 11 00:01:39 2000 Hans-Peter Nilsson <hp@axis.se>
* doc/Makefile.in: Regenerate.
* doc/c-m32r.texi (M32R-Opts): Document new command line switch.
2000-03-02 Michael Meissner <meissner@redhat.com>
* config/tc-d30v.c (check_range): Remove code that incorrectly
@ -920,6 +923,7 @@ Fri Feb 11 14:21:51 2000 Jeffrey A Law (law@cygnus.com)
filename is encoded incorrectly.
2000-01-31 Nick Clifton <nickc@cygnus.com>
* config/tc-arm.c (reg_table): Add support for ATPCS register
naming conventions.
@ -1475,11 +1479,6 @@ Sun Sep 19 10:43:31 1999 Jeffrey A Law (law@cygnus.com)
* config/tc-hppa.c (pa_ip): Handle 'g' operand.
at Sep 18 12:13:28 1999 Jeffrey A Law (law@cygnus.com)
* config/tc-hppa.c (md_assemble): Fix dwarf2 line handling.
(pa_ip): Handle 'fX'.
Sat Sep 18 12:13:28 1999 Jeffrey A Law (law@cygnus.com)
* config/tc-hppa.c (md_assemble): Fix dwarf2 line handling.

View File

@ -74,14 +74,14 @@ const char line_comment_chars[] = "#/";
const int md_reloc_size = 8;
static int do_jsri2bsr = 0; /* change here from 1 by Cruess 19 August 97 */
static int do_jsri2bsr = 0; /* Change here from 1 by Cruess 19 August 97. */
static int sifilter_mode = 0;
const char EXP_CHARS[] = "eE";
/* Chars that mean this number is a floating point constant */
/* As in 0f12.456 */
/* or 0d1.2345e12 */
/* Chars that mean this number is a floating point constant
As in 0f12.456
or 0d1.2345e12 */
const char FLT_CHARS[] = "rRsSfFdDxXpP";
#define C(what,length) (((what) << 2) + (length))
@ -113,7 +113,7 @@ cpu_type;
cpu_type cpu = M340;
/* Initialize the relax table */
/* Initialize the relax table. */
const relax_typeS md_relax_table[] =
{
{ 1, 1, 0, 0 }, /* 0: unused */
@ -131,7 +131,7 @@ const relax_typeS md_relax_table[] =
{ 0, 0, 0, 0 } /*12: unused */
};
/* LITERAL POOL DATA STRUCTURES */
/* Literal pool data structures. */
struct literal
{
unsigned short refcnt;
@ -158,18 +158,18 @@ static unsigned long poolspan;
-- so we have to be smaller than 1018 and since we deal with 2-byte
instructions, the next good choice is 1016.
-- Note we have a test case that fails when we've got 1018 here. */
#define SPANPANIC (1016) /* 1024 - 1 entry - 2 byte rounding */
#define SPANPANIC (1016) /* 1024 - 1 entry - 2 byte rounding. */
#define SPANCLOSE (900)
#define SPANEXIT (600)
static symbolS * poolsym; /* label for current pool */
static symbolS * poolsym; /* label for current pool. */
static char poolname[8];
static struct hash_control * opcode_hash_control; /* Opcode mnemonics */
static struct hash_control * opcode_hash_control; /* Opcode mnemonics. */
/* This table describes all the machine specific pseudo-ops the assembler
has to support. The fields are:
Pseudo-op name without dot
Function to call to execute this pseudo-op
Integer arg to pass to the function */
Integer arg to pass to the function. */
const pseudo_typeS md_pseudo_table[] =
{
{ "export", s_globl, 0 },
@ -2146,8 +2146,8 @@ md_apply_fix3 (fixP, valp, segment)
}
else
{
buf[0] |= ((val >> 8) & 0x7);
buf[1] |= (val & 0xff);
buf[1] |= ((val >> 8) & 0x7);
buf[0] |= (val & 0xff);
}
break;