Messages in this thread | | | Subject | Re: [PATCH 2/2] perf tools: substitute yet another strtoull() | From | Andy Shevchenko <> | Date | Wed, 22 Oct 2014 16:57:50 +0300 |
| |
On Fri, 2014-07-04 at 14:43 +0300, Andy Shevchenko wrote: > Instead of home grown function let's use what library provides us. >
Any comments on this? Should I resend it?
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> > --- > tools/perf/util/util.c | 24 ++---------------------- > 1 file changed, 2 insertions(+), 22 deletions(-) > > diff --git a/tools/perf/util/util.c b/tools/perf/util/util.c > index e4132ae..861e16e 100644 > --- a/tools/perf/util/util.c > +++ b/tools/perf/util/util.c > @@ -206,35 +206,15 @@ size_t hex_width(u64 v) > return n; > } > > -static int hex(char ch) > -{ > - if ((ch >= '0') && (ch <= '9')) > - return ch - '0'; > - if ((ch >= 'a') && (ch <= 'f')) > - return ch - 'a' + 10; > - if ((ch >= 'A') && (ch <= 'F')) > - return ch - 'A' + 10; > - return -1; > -} > - > /* > * While we find nice hex chars, build a long_val. > * Return number of chars processed. > */ > int hex2u64(const char *ptr, u64 *long_val) > { > - const char *p = ptr; > - *long_val = 0; > - > - while (*p) { > - const int hex_val = hex(*p); > + char *p; > > - if (hex_val < 0) > - break; > - > - *long_val = (*long_val << 4) | hex_val; > - p++; > - } > + *long_val = strtoull(ptr, &p, 16); > > return p - ptr; > }
-- Andy Shevchenko <andriy.shevchenko@intel.com> Intel Finland Oy
| |