lkml.org 
[lkml]   [2009]   [Jun]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] perf_counter: tools: Define and use our own u64, s64 etc. definitions

* Paul Mackerras <paulus@samba.org> wrote:

> On 64-bit powerpc, __u64 is defined to be unsigned long rather
> than unsigned long long. This causes compiler warnings every time
> we print a __u64 value with %Lx.
>
> Rather than changing __u64, we define our own u64 to be unsigned
> long long on all architectures, and similarly s64 as signed long
> long. For consistency we also define u32, s32, u16, s16, u8 and
> s8. These definitions are put in a new header, types.h, because
> these definitions are needed in util/string.h and util/symbol.h.
>
> The main change here is the mechanical change of
> __[us]{64,32,16,8} to remove the "__". The other changes are:
>
> * Create types.h
> * Include types.h in perf.h, util/string.h and util/symbol.h
> * Add types.h to the LIB_H definition in Makefile
> * Added (u64) casts in process_overflow_event() and print_sym_table()
> to kill two remaining warnings.
>
> Signed-off-by: Paul Mackerras <paulus@samba.org>
> ---
> tools/perf/Makefile | 1 +
> tools/perf/builtin-annotate.c | 66 ++++++++++++++++----------------
> tools/perf/builtin-record.c | 20 +++++-----
> tools/perf/builtin-report.c | 80 ++++++++++++++++++++--------------------
> tools/perf/builtin-stat.c | 62 +++++++++++++++---------------
> tools/perf/builtin-top.c | 24 ++++++------
> tools/perf/perf.h | 1 +
> tools/perf/types.h | 17 ++++++++
> tools/perf/util/parse-events.c | 10 ++--
> tools/perf/util/string.c | 2 +-
> tools/perf/util/string.h | 4 +-
> tools/perf/util/symbol.c | 20 +++++-----
> tools/perf/util/symbol.h | 15 ++++---
> 13 files changed, 171 insertions(+), 151 deletions(-)
> create mode 100644 tools/perf/types.h

Very nice, thanks a lot Paul for going through this!

Ingo


\
 
 \ /
  Last update: 2009-06-19 18:27    [from the cache]
©2003-2011 Jasper Spaans