+2003-08-23 Jason Eckhardt <jle@rice.edu>
+
+ * calls.c (emit_library_call_value_1): Remove code related
+ to LIBGCC_NEEDS_DOUBLE.
+ * config/stormy16/stormy16.h: Remove mention of LIBGCC_NEEDS_DOUBLE.
+ * doc/tm.texi: Likewise.
+ * system.h: Poison the LIBGCC_NEEDS_DOUBLE macro.
+
2003-08-23 Richard Sandiford <rsandifo@redhat.com>
* config/mips/linux64.h (STARTFILE_PREFIX_SPEC): Remove.
|| (GET_MODE (val) != mode && GET_MODE (val) != VOIDmode))
abort ();
- /* On some machines, there's no way to pass a float to a library fcn.
- Pass it as a double instead. */
-#ifdef LIBGCC_NEEDS_DOUBLE
- if (LIBGCC_NEEDS_DOUBLE && mode == SFmode)
- val = convert_modes (DFmode, SFmode, val, 0), mode = DFmode;
-#endif
-
/* There's no need to call protect_from_queue, because
either emit_move_insn or emit_push_insn will do that. */
The obvious choice would be `float'--but that won't work with traditional C
compilers that expect all arguments declared as `float' to arrive as
`double'. To avoid this conversion, the library routines ask for the value
- as some other type and then treat it as a `float'.
-
- On some systems, no other type will work for this. For these systems, you
- must use `LIBGCC_NEEDS_DOUBLE' instead, to force conversion of the values
- `double' before they are passed. */
+ as some other type and then treat it as a `float'. */
/* #define FLOAT_ARG_TYPE */
/* Define this macro to override the way library routines redesignate a `float'
they needs this macro to be redefined to 0.
@end defmac
-@defmac LIBGCC_NEEDS_DOUBLE
-Define this macro if @code{float} arguments cannot be passed to library
-routines (so they must be converted to @code{double}). This macro
-affects both how library calls are generated and how the library
-routines in @file{libgcc.a} accept their arguments. It is useful on
-machines where floating and fixed point arguments are passed
-differently, such as the i860.
-@end defmac
-
@defmac NEXT_OBJC_RUNTIME
Define this macro to generate code for Objective-C message sending using
the calling convention of the NeXT system. This calling convention
DBX_LBRAC_FIRST DBX_OUTPUT_ENUM DBX_OUTPUT_SOURCE_FILENAME \
DBX_WORKING_DIRECTORY INSN_CACHE_DEPTH INSN_CACHE_SIZE \
INSN_CACHE_LINE_WIDTH INIT_SECTION_PREAMBLE NEED_ATEXIT ON_EXIT \
- EXIT_BODY OBJECT_FORMAT_ROSE MULTIBYTE_CHARS MAP_CHARACTER
+ EXIT_BODY OBJECT_FORMAT_ROSE MULTIBYTE_CHARS MAP_CHARACTER \
+ LIBGCC_NEEDS_DOUBLE
/* Hooks that are no longer used. */
#pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE \