Remove duplicate definitions of the md_atof() function

This commit is contained in:
Nick Clifton
2007-10-17 16:45:56 +00:00
parent 25b07cd9c4
commit 499ac35361
61 changed files with 1816 additions and 3848 deletions

View File

@@ -583,8 +583,8 @@ const char EXP_CHARS[] = "eE";
As in 0f12.456 or 0d1.2345e12.
Be aware that MAXIMUM_NUMBER_OF_CHARS_FOR_FLOAT may have to be
changed in read.c. Ideally it shouldn't hae to know abou it at
all, but nothing is ideal around here. */
changed in read.c. Ideally it shouldn't have to know about it
at all, but nothing is ideal around here. */
const char FLT_CHARS[] = "rRsSfFdDxXpP";
static struct pa_it the_insn;
@@ -1335,61 +1335,10 @@ pa_parse_nullif (char **s)
return nullif;
}
/* Turn a string in input_line_pointer into a floating point constant of type
type, and store the appropriate bytes in *litP. The number of LITTLENUMS
emitted is stored in *sizeP . An error message or NULL is returned. */
#define MAX_LITTLENUMS 6
char *
md_atof (int type, char *litP, int *sizeP)
{
int prec;
LITTLENUM_TYPE words[MAX_LITTLENUMS];
LITTLENUM_TYPE *wordP;
char *t;
switch (type)
{
case 'f':
case 'F':
case 's':
case 'S':
prec = 2;
break;
case 'd':
case 'D':
case 'r':
case 'R':
prec = 4;
break;
case 'x':
case 'X':
prec = 6;
break;
case 'p':
case 'P':
prec = 6;
break;
default:
*sizeP = 0;
return _("Bad call to MD_ATOF()");
}
t = atof_ieee (input_line_pointer, type, words);
if (t)
input_line_pointer = t;
*sizeP = prec * sizeof (LITTLENUM_TYPE);
for (wordP = words; prec--;)
{
md_number_to_chars (litP, (valueT) (*wordP++), sizeof (LITTLENUM_TYPE));
litP += sizeof (LITTLENUM_TYPE);
}
return NULL;
return ieee_md_atof (type, litP, sizeP, TRUE);
}
/* Write out big-endian. */