X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gas%2Fconfig%2Ftc-dlx.c;h=19539bf2689cf8996a2c3ef57e05b5e96fc48f85;hb=499ac353610f24006acf82c32503d8d15d0f278c;hp=fc4b21093081c856bc0336370c807003cec68c37;hpb=25b07cd9c40077c076d68f9e7d5a113828fbebbf;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/config/tc-dlx.c b/gas/config/tc-dlx.c index fc4b210930..19539bf268 100644 --- a/gas/config/tc-dlx.c +++ b/gas/config/tc-dlx.c @@ -975,69 +975,13 @@ md_assemble (char *str) } /* This is identical to the md_atof in m68k.c. I think this is right, - but I'm not sure. - - 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 is - returned, or NULL on OK. */ -/* Dlx will not use it anyway, so I just leave it here for now. */ - -/* Equal to MAX_PRECISION in atof-ieee.c. */ -#define MAX_LITTLENUMS 6 + but I'm not sure. Dlx will not use it anyway, so I just leave it + here for now. */ 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 0; + return ieee_md_atof (type, litP, sizeP, TRUE); } /* Write out big-endian. */