diff options
author | Thiago Jung Bauermann <bauerman@br.ibm.com> | 2007-10-25 17:57:34 +0000 |
---|---|---|
committer | Thiago Jung Bauermann <bauerman@br.ibm.com> | 2007-10-25 17:57:34 +0000 |
commit | 7678ef8fb055dd4853c7c6b25f739a8d74650899 (patch) | |
tree | 8aeb5e60db77112eebd98380fb03e6d8048a16b4 /gdb/valprint.c | |
parent | 9b913628cfe092b3fdd328de4264def1ec1e94cb (diff) | |
download | gdb-7678ef8fb055dd4853c7c6b25f739a8d74650899.zip gdb-7678ef8fb055dd4853c7c6b25f739a8d74650899.tar.gz gdb-7678ef8fb055dd4853c7c6b25f739a8d74650899.tar.bz2 |
2007-10-25 Wu Zhou <woodzltc@cn.ibm.com>
Thiago Jung Bauermann <bauerman@br.ibm.com>
* c-lang.c (c_create_fundamental_type): Create fundamental
types for DFP.
* c-typeprint.c (c_type_print_varspec_prefix): Add
TYPE_CODE_DECFLOAT to no prefix needed case.
(c_type_print_varspec_suffix): Add TYPE_CODE_DECFLOAT to no
suffix needed case.
* c-valprint.c (c_val_print): Call print_decimal_floating to
print DFP values.
* dwarf2read.c (read_base_type): Read DW_ATE_decimal_float
attribute code and return TYPE_CODE_DECFLOAT.
(dwarf_base_type): Set dwarf2_fundamental_type for DFP values.
* gdbtypes.c (gdbtypes_post_init): Initialize builtin_decfloat,
builtin_decdouble and builtin_declong.
* gdbtypes.h (enum type_code): Add TYPE_CODE_DECFLOAT as a
type code for DFP.
(FT_DECFLOAT, FT_DBL_PREC_DECFLOAT, FT_EXT_PREC_DECFLOAT): New
types, for decimal floating point.
(FT_NUM_MEMBERS): Increment, new types added.
(struct builtin_type): Add builtin_decfloat, builtin_decdouble
and builtin_declong.
* valprint.c (print_decimal_floating): New function to print DFP
values.
* value.h (print_decimal_floating): Prototype.
Diffstat (limited to 'gdb/valprint.c')
-rw-r--r-- | gdb/valprint.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/gdb/valprint.c b/gdb/valprint.c index eb3a73b..2b995da 100644 --- a/gdb/valprint.c +++ b/gdb/valprint.c @@ -33,6 +33,7 @@ #include "floatformat.h" #include "doublest.h" #include "exceptions.h" +#include "dfp.h" #include <errno.h> @@ -506,6 +507,18 @@ print_floating (const gdb_byte *valaddr, struct type *type, } void +print_decimal_floating (const gdb_byte *valaddr, struct type *type, + struct ui_file *stream) +{ + char decstr[MAX_DECIMAL_STRING]; + unsigned len = TYPE_LENGTH (type); + + decimal_to_string (valaddr, len, decstr); + fputs_filtered (decstr, stream); + return; +} + +void print_binary_chars (struct ui_file *stream, const gdb_byte *valaddr, unsigned len) { |