[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20110412144032.1fc09497.rdunlap@xenotime.net>
Date: Tue, 12 Apr 2011 14:40:32 -0700
From: Randy Dunlap <rdunlap@...otime.net>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Alexey Dobriyan <adobriyan@...il.com>,
linux-kernel@...r.kernel.org, behlendorf1@...l.gov, oleg@...hat.com
Subject: Re: [PATCH] remove abs64()
On Tue, 12 Apr 2011 14:33:40 -0700 Andrew Morton wrote:
> On Wed, 13 Apr 2011 00:16:58 +0300
> Alexey Dobriyan <adobriyan@...il.com> wrote:
>
> > On Tue, Apr 12, 2011 at 02:10:40PM -0700, Andrew Morton wrote:
> > > On Tue, 12 Apr 2011 14:07:26 -0700
> > > Randy Dunlap <rdunlap@...otime.net> wrote:
> > >
> > > > > + __builtin_choose_expr( \
> > > > > + __builtin_types_compatible_p(typeof(_x), long long), \
> > > > > + (unsigned long long)({ _x < 0 ? -_x : _x; }), \
> > > > > + _x))))); \
> > > > > +})
> > > >
> > > > that is better?
> > >
> > > I think so.
> > >
> > > It's a bit concerning that it changes the return type of abs().
> >
> > I haven't read every abs() user, but, yes, sizeof(abs()) silently
> > changing is the issue.
>
> It changes signedness_of(abs(signed_expr)) as well. That changes the
> signedness of expressions which use abs() and on and on.
> --
thanks for the further explanations.
---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists