+2017-11-06 Pedro Alves <palves@redhat.com>
+
+ * Makefile.in (SER_HARDWIRE): Update comment.
+ (HFILES_NO_SRCDIR): Remove gdb_termios.h.
+ * common/gdb_termios.h: Delete file.
+ * common/job-control.c: Include termios.h and unistd.h instead of
+ gdb_termios.h.
+ (gdb_setpgid): Remove HAVE_TERMIOS || TIOCGPGRP preprocessor
+ check.
+ (have_job_control): Check HAVE_TERMIOS_H instead of HAVE_TERMIOS.
+ Remove sgtty code.
+ * configure.ac: No longer check for termio.h and sgtty.h.
+ * configure: Regenerate.
+ * inflow.c: Include termios.h instead of gdb_termios.h. Replace
+ PROCESS_GROUP_TYPE checks with HAVE_TERMIOS_H checks throughout.
+ Replace PROCESS_GROUP_TYPE references with pid_t references
+ throughout.
+ (gdb_getpgrp): Delete.
+ (set_initial_gdb_ttystate): Use tcgetpgrp instead of gdb_getpgrp.
+ (child_terminal_inferior): Remove comment. Remove sgtty code.
+ (child_terminal_ours_1): Use tcgetpgrp directly instead of
+ gdb_getpgrp. Use serial_set_tty_state instead aof
+ serial_noflush_set_tty_state. Remove sgtty code.
+ * inflow.h: Include unistd.h instead of gdb_termios.h. Replace
+ PROCESS_GROUP_TYPE check with HAVE_TERMIOS_H check.
+ (inferior_process_group): Now returns pid_t.
+ * ser-base.c (ser_base_noflush_set_tty_state): Delete.
+ * ser-base.h (ser_base_noflush_set_tty_state): Delete.
+ * ser-event.c (serial_event_ops): Update.
+ * ser-go32.c (dos_noflush_set_tty_state): Delete.
+ (dos_ops): Update.
+ * ser-mingw.c (hardwire_ops, tty_ops, pipe_ops, tcp_ops): Update.
+ * ser-pipe.c (pipe_ops): Update.
+ * ser-tcp.c (tcp_ops): Update.
+ * ser-unix.c: Include termios.h instead of gdb_termios.h. Remove
+ HAVE_TERMIOS checks.
+ [HAVE_TERMIO] (struct hardwire_ttystate): Delete.
+ [HAVE_SGTTY] (struct hardwire_ttystate): Delete.
+ (get_tty_state, set_tty_state): Drop termio and sgtty code, and
+ assume termios.
+ (hardwire_noflush_set_tty_state): Delete.
+ (hardwire_print_tty_state, hardwire_drain_output)
+ (hardwire_flush_output, hardwire_flush_input)
+ (hardwire_send_break, hardwire_raw, hardwire_setbaudrate)
+ (hardwire_setstopbits, hardwire_setparity): Drop termio and sgtty
+ code, and assume termios.
+ (hardwire_ops): Update.
+ (_initialize_ser_hardwire): Remove HAVE_TERMIOS check.
+ * serial.c (serial_noflush_set_tty_state): Delete.
+ * serial.h (serial_noflush_set_tty_state): Delete.
+ (serial_ops::noflush_set_tty_state): Delete.
+
+2017-11-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * Makefile.in (SFILES): Remove doublest.c and dfp.c.
+ (HFILES_NO_SRCDIR): Remove doublest.h and dfp.h.
+ (COMMON_OBS): Remove doublest.o and dfp.o.
+ Do not build target-float.c (instead of doublest.c)
+ with -Wformat-nonliteral.
+
+ * doublest.c: Remove file.
+ * doublest.h: Remove file.
+ * dfp.c: Remove file.
+ * dfp.h: Remove file.
+
+ * target-float.c: Do not include "doublest.h" and "dfp.h".
+ (DOUBLEST): Move here from doublest.h.
+ (enum float_kind): Likewise.
+ (FLOATFORMAT_CHAR_BIT): Likewise.
+ (FLOATFORMAT_LARGEST_BYTES): Likewise.
+ (floatformat_totalsize_bytes): Move here from doublest.c. Make static.
+ (floatformat_precision): Likewise.
+ (floatformat_normalize_byteorder, get_field, put_field): Likewise.
+ (floatformat_is_negative, floatformat_classify, floatformat_mantissa):
+ Likewise.
+ (host_float_format, host_double_format, host_long_double_format):
+ Likewise.
+ (floatformat_to_string, floatformat_from_string): Likewise.
+ (floatformat_to_doublest): Likewise. Also, inline the original
+ convert_floatformat_to_doublest.
+ (floatformat_from_doublest): Likewise. Also, inline the original
+ convert_floatformat_from_doublest.
+
+ Include "dpd/decimal128.h", "dpd/decimal64.h", and "dpd/decimal32.h".
+ (MAX_DECIMAL_STRING): Move here from dfp.c.
+ (match_endianness): Likewise.
+ (set_decnumber_context, decimal_check_errors): Likewise.
+ (decimal_from_number, decimal_to_number): Likewise.
+ (decimal_to_string, decimal_from_string): Likewise. Make static.
+ (decimal_from_longest, decimal_from_ulongest): Likewise.
+ (decimal_to_longest): Likewise.
+ (decimal_binop, decimal_is_zero, decimal_compare): Likewise.
+ (decimal_convert): Likewise.
+
+2017-11-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * doublest.c: Do not include "gdbtypes.h".
+ (extract_typed_floating): Remove.
+ (store_typed_floating): Remove.
+ (convert_typed_floating): Remove.
+ * doublest.h (struct type): Remove.
+ (DOUBLEST_PRINT_FORMAT): Remove.
+ (DOUBLEST_SCAN_FORMAT): Remove.
+ (extract_typed_floating): Remove.
+ (store_typed_floating): Remove.
+ (convert_typed_floating): Remove.
+
+ * dfp.c (decimal_from_doublest): Remove.
+ (decimal_to_doublest): Remove.
+ * dfp.h: Do not include "doublest.h".
+ (decimal_from_doublest): Remove.
+ (decimal_to_doublest): Remove.
+
+ * value.c: Do not include "doublest.h" and "dfp.h".
+ (value_as_double): Remove.
+ (unpack_double): Remove.
+ (value_from_double): Remove.
+ (value_from_decfloat): Remove.
+ * value.h: Do not include "doublest.h".
+ (value_as_double): Remove.
+ (unpack_double): Remove.
+ (value_from_double): Remove.
+ (value_from_decfloat): Remove.
+
+2017-11-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * i386-tdep.c: Include "target-float.h". Do not include "doublest.h".
+ (i386_extract_return_value): Use target_float_convert.
+ (i386_store_return_value): Likewise.
+ * i387-tdep.c (i387_register_to_value): Use target_float_convert.
+ (i387_value_to_register): Likewise.
+ * ia64-tdep.c: Include "target-float.h". Do not include "doublest.h".
+ (ia64_register_to_value): Use target_float_convert.
+ (ia64_value_to_register): Likewise.
+ (ia64_extract_return_value): Likewise.
+ (ia64_store_return_value): Likewise.
+ (ia64_push_dummy_call): Likewise.
+ * m68k-tdep.c: Include "target-float.h".
+ (m68k_register_to_value): Use target_float_convert.
+ (m68k_value_to_register): Likewise.
+ (m68k_svr4_extract_return_value): Likewise.
+ (m68k_svr4_store_return_value): Likewise.
+ * ppc-sysv-tdep.c: Include "target-float.h".
+ (ppc_sysv_abi_push_dummy_call): Use target_float_convert.
+ (do_ppc_sysv_return_value): Likewise.
+ (ppc64_sysv_abi_push_freg): Likewise.
+ (ppc64_sysv_abi_return_value_base): Likewise.
+ * rs6000-aix-tdep.c: Include "target-float.h".
+ (rs6000_push_dummy_call): Use target_float_convert.
+ (rs6000_return_value): Likewise.
+ * rs6000-lynx178-tdep.c: Include "target-float.h".
+ (rs6000_lynx178_push_dummy_call): Use target_float_convert.
+ (rs6000_lynx178_return_value): Likewise.
+ * rs6000-tdep.c: Include "target-float.h". Do not include "doublest.h".
+ (rs6000_register_to_value): Use target_float_convert.
+ (rs6000_value_to_register): Likewise.
+ * arm-tdep.c: Include "target-float.h". Do not include "doublest.h".
+ (arm_extract_return_value): Use target_float_convert.
+ (arm_store_return_value): Likewise.
+ * sh-tdep.c: Include "target-float.h". Do not include "doublest.h".
+ (sh_register_convert_to_virtual): Use target_float_convert.
+ (sh_register_convert_to_raw): Likewise.
+ * sh64-tdep.c: Include "target-float.h".
+ (sh64_extract_return_value): Use target_float_convert.
+ (sh64_register_convert_to_virtual): Likewise.
+ (sh64_register_convert_to_raw): Likewise. Fix argument types.
+
+2017-11-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * target-float.c (floatformat_to_host_double): New function.
+ (floatformat_from_host_double): Likewise.
+ (target_float_to_host_double): Likewise.
+ (target_float_from_host_double): Likewise.
+ * target-float.h (target_float_to_host_double): Add prototype.
+ (target_float_from_host_double): Likewise.
+
+ * guile/scm-value.c: Include "target-float.h".
+ (gdbscm_value_to_real): Use target_float_to_host_double.
+ Handle integer source values via value_as_long.
+ * guile/scm-math.c: Include "target-float.h". Do not include
+ "doublest.h", "dfp.h", and "expression.h".
+ (vlscm_convert_typed_number): Use target_float_from_host_double.
+ (vlscm_convert_number): Likewise.
+
+ * python/py-value.c (valpy_float): Use target_float_to_host_double.
+ (convert_value_from_python): Use target_float_from_host_double.
+
+2017-11-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * ada-lang.c (cast_to_fixed): Reimplement in target arithmetic.
+ (cast_from_fixed): Likewise.
+ (ada_scaling_type): New function.
+ (ada_delta): Return value instead of DOUBLEST. Perform target
+ arithmetic instead of host arithmetic.
+ (scaling_factor): Rename to ...
+ (ada_scaling_factor) ... this. Make non-static. Return value instead
+ of DOUBLEST. Perform target arithmetic instead of host arithmetic.
+ (ada_fixed_to_float): Remove.
+ (ada_float_to_fixed): Remove.
+ * ada-lang.h (ada_fixed_to_float): Remove.
+ (ada_float_to_fixed): Remove.
+ (ada_delta): Return value instead of DOUBLEST.
+ (ada_scaling_factor): Add prototype.
+
+ * ada-typeprint.c: Include "target-float.h".
+ (print_fixed_point_type): Perform target arithmetic instead of
+ host arithmetic.
+ * ada-valprint.c: Include "target-float.h".
+ (ada_val_print_num): Perform target arithmetic instead of
+ host arithmetic for fixed-point types.
+
+2017-11-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * target-float.c: Include <math.h>.
+ (floatformat_binop): New function.
+ (floatformat_compare): Likewise.
+ (target_float_binop): Likewise.
+ (target_float_compare): Likewise.
+ * target-float.h: Include "expression.h".
+ (target_float_binop): Add prototype.
+ (target_float_compare): Likewise.
+
+ * valarith.c: Do not include "doublest.h" and "dfp.h".
+ Include "common/byte-vector.h".
+ (value_args_as_decimal): Remove, replace by ...
+ (value_args_as_target_float): ... this function. Handle both
+ binary and decimal target floating-point formats.
+ (scalar_binop): Handle both binary and decimal FP using
+ value_args_as_target_float and target_float_binop.
+ (value_equal): Handle both binary and decimal FP using
+ value_args_as_target_float and target_float_compare.
+ (value_less): Likewise.
+ (value_pos): Handle all scalar types as simple copy.
+ (value_neg): Handle all scalar types via BINOP_SUB from 0.
+ * dfp.c (decimal_binop): Throw error instead of internal_error
+ when called with an unsupported operation code.
+
+2017-11-06 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * target-float.c (target_float_to_string): New function.
+ (target_float_from_string): New function.
+ * target-float.h (target_float_to_string): Add prototype.
+ (target_float_from_string): Add prototype.
+
+ * valprint.c: Include "target-float.h". Do not include
+ "doublest.h" and "dfp.h".
+ (print_floating): Use target_float_to_string.
+ * printcmd.c: Include "target-float.h". Do not include "dfp.h".
+ (printf_floating): Use target_float_to_string.
+ * i387-tdep.c: Include "target-float.h". Do not include "doublest.h".
+ (print_i387_value): Use target_float_to_string.
+ * mips-tdep.c: Include "target-float.h".
+ (mips_print_fp_register): Use target_float_to_string.
+ * sh64-tdep.c: Include "target-float.h".
+ (sh64_do_fp_register): Use target_float_to_string.
+
+ * parse.c: Include "target-float.h". Do not include
+ "doublest.h" and "dfp.h".
+ (parse_float): Use target_float_from_string.
+ * stabsread.c: Include "target-float.h". Do not include "doublest.h".
+ (define_symbol): Use target_float_from_string.
+ * gdbarch-selftests.c: Include "target-float.h".
+ (register_to_value_test): Use target_float_from_string.
+
2017-11-06 Ulrich Weigand <uweigand@de.ibm.com>
* Makefile.c (SFILES): Add target-float.c.