diff options
author | Tom Tromey <tom@tromey.com> | 2020-03-13 17:39:52 -0600 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2020-03-13 18:03:41 -0600 |
commit | f5354008862defe83fc6d3620d51da52f860f5bf (patch) | |
tree | aa7bbf0f4bffd16149283adeed1d3c33ff3726e3 | |
parent | 3eec3b05b9ecf5e726c606f0bba916e095dcbe98 (diff) | |
download | binutils-f5354008862defe83fc6d3620d51da52f860f5bf.zip binutils-f5354008862defe83fc6d3620d51da52f860f5bf.tar.gz binutils-f5354008862defe83fc6d3620d51da52f860f5bf.tar.bz2 |
Simplify generic_val_print_float
This changes generic_val_print_float not to call
val_print_scalar_formatted. This lets generic_value_print then use
value_print_scalar_formatted instead.
gdb/ChangeLog
2020-03-13 Tom Tromey <tom@tromey.com>
* valprint.c (generic_val_print_float): Don't call
val_print_scalar_formatted.
(generic_val_print, generic_value_print): Update.
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/valprint.c | 29 |
2 files changed, 21 insertions, 14 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ccf0d1e..c2b0550 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2020-03-13 Tom Tromey <tom@tromey.com> + * valprint.c (generic_val_print_float): Don't call + val_print_scalar_formatted. + (generic_val_print, generic_value_print): Update. + +2020-03-13 Tom Tromey <tom@tromey.com> + * valprint.c (generic_value_print_char): New function (generic_value_print): Use it. diff --git a/gdb/valprint.c b/gdb/valprint.c index 8c2d1aa..f759e0a 100644 --- a/gdb/valprint.c +++ b/gdb/valprint.c @@ -924,17 +924,11 @@ generic_val_print_float (struct type *type, struct gdbarch *gdbarch = get_type_arch (type); int unit_size = gdbarch_addressable_memory_unit_size (gdbarch); - if (options->format) - { - val_print_scalar_formatted (type, embedded_offset, - original_value, options, 0, stream); - } - else - { - const gdb_byte *valaddr = value_contents_for_printing (original_value); + gdb_assert (!options->format); - print_floating (valaddr + embedded_offset * unit_size, type, stream); - } + const gdb_byte *valaddr = value_contents_for_printing (original_value); + + print_floating (valaddr + embedded_offset * unit_size, type, stream); } /* generic_val_print helper for TYPE_CODE_COMPLEX. */ @@ -1073,8 +1067,12 @@ generic_val_print (struct type *type, case TYPE_CODE_FLT: case TYPE_CODE_DECFLOAT: - generic_val_print_float (type, embedded_offset, stream, - original_value, options); + if (options->format) + val_print_scalar_formatted (type, embedded_offset, + original_value, options, 0, stream); + else + generic_val_print_float (type, embedded_offset, stream, + original_value, options); break; case TYPE_CODE_VOID: @@ -1185,8 +1183,11 @@ generic_value_print (struct value *val, struct ui_file *stream, int recurse, case TYPE_CODE_FLT: case TYPE_CODE_DECFLOAT: - generic_val_print_float (type, 0, stream, - val, options); + if (options->format) + value_print_scalar_formatted (val, options, 0, stream); + else + generic_val_print_float (type, 0, stream, + val, options); break; case TYPE_CODE_VOID: |