RFR: 8292981: Unify and restructure integer printing format specifiers

Stefan Karlsson stefank at openjdk.org
Fri Aug 26 13:45:26 UTC 2022


Today we have some inconsistencies in how we name our integer printing format specifiers. I'd like to change this to be consistent. 

This patch comes from a discussion in #10028, which snowballed into restructuring the format specifiers. The main issues was that my original patch used PTR<size>_FORMAT to print integers with the format 0x000<value>. The reviewers felt that it was wrong to use PTR format specifiers when printing integers. I agree with that.

We do have format specifiers to print hex values out of integers, though they don't 0-pad like the PTR macros do, and only some of the prepend 0x.

I'd like to suggest that we use a convention to specify what we want. This is the current proposal:

// Guide to the suffixes used in the format specifiers for integers:
//        - print the decimal value:                   745565
//  _X    - print as hexadecimal, without leading 0s: 0x12345
//  _X_0  - print as hexadecimal, with leading 0s: 0x00012345
//  _H    - print as hexadecimal, without 0x prefix
//  _W(w) - prints w sized string with the given value right
//          adjusted. Use -w to print left adjusted.
//
// Note that the PTR format specifiers print using 0x with leading zeros,
// just like the _X_0 version for integers.


The patch also removes PTR32_FORMAT and PTR64_FORMAT and replace them with the corresponding integer format specifiers.

-------------

Commit messages:
 - 8292981: Unify and restructure integer printing format specifiers

Changes: https://git.openjdk.org/jdk/pull/10042/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=10042&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8292981
  Stats: 145 lines in 26 files changed: 35 ins; 21 del; 89 mod
  Patch: https://git.openjdk.org/jdk/pull/10042.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/10042/head:pull/10042

PR: https://git.openjdk.org/jdk/pull/10042


More information about the hotspot-dev mailing list