From 58cf0567b5d6f06e320d169be722eefb3df2b2c1 Mon Sep 17 00:00:00 2001 From: hunt Date: Thu, 23 Feb 2006 21:01:51 +0000 Subject: 2006-02-23 Martin Hunt PR 1989. Adds support for %p in printf * staptree.h (struct print_format): Add conv_unsigned_ptr. * staptree.cxx (components_to_string): Output 'p' for conv_unsigned_ptr. * elaborate.cxx (visit_print_format): Add case for conv_unsigned_ptr. --- ChangeLog | 15 ++++++++++++--- elaborate.cxx | 1 + staptree.cxx | 8 ++++++++ staptree.h | 1 + 4 files changed, 22 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index ca41ce71..453b9391 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,8 +1,17 @@ 2006-02-23 Martin Hunt - * Makefile.am (install-data-local): Create tapset/i686 and tapset/x86_64 - directories. This fixes a problem where they were included, but had - bad permissions. + PR 1989. Adds support for %p in printf + * staptree.h (struct print_format): Add conv_unsigned_ptr. + * staptree.cxx (components_to_string): Output 'p' + for conv_unsigned_ptr. + * elaborate.cxx (visit_print_format): Add case for + conv_unsigned_ptr. + +2006-02-23 Martin Hunt + + * Makefile.am (install-data-local): Create tapset/i686 and + tapset/x86_64 directories. This fixes a problem where they + were included, but had bad permissions. * Makefile.in: Rebuilt. 2006-02-22 Frank Ch. Eigler diff --git a/elaborate.cxx b/elaborate.cxx index a906bb87..48a3cbb3 100644 --- a/elaborate.cxx +++ b/elaborate.cxx @@ -2275,6 +2275,7 @@ typeresolution_info::visit_print_format (print_format* e) case print_format::conv_signed_decimal: case print_format::conv_unsigned_decimal: case print_format::conv_unsigned_octal: + case print_format::conv_unsigned_ptr: case print_format::conv_unsigned_uppercase_hex: case print_format::conv_unsigned_lowercase_hex: wanted = pe_long; diff --git a/staptree.cxx b/staptree.cxx index 74aa3964..6669e9ae 100644 --- a/staptree.cxx +++ b/staptree.cxx @@ -401,6 +401,10 @@ print_format::components_to_string(vector const & components) oss << "llo"; break; + case conv_unsigned_ptr: + oss << "p"; + break; + case conv_unsigned_uppercase_hex: oss << "llX"; break; @@ -551,6 +555,10 @@ print_format::string_to_components(string const & str) curr.type = conv_unsigned_decimal; break; + case 'p': + curr.type = conv_unsigned_ptr; + break; + case 'X': curr.type = conv_unsigned_uppercase_hex; break; diff --git a/staptree.h b/staptree.h index cde87372..bb472507 100644 --- a/staptree.h +++ b/staptree.h @@ -277,6 +277,7 @@ struct print_format: public expression conv_signed_decimal, conv_unsigned_decimal, conv_unsigned_octal, + conv_unsigned_ptr, conv_unsigned_uppercase_hex, conv_unsigned_lowercase_hex, conv_string, -- cgit