Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1232132
| From | Alexey Dobriyan <adobriyan@gmail.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: + kernelh-make-abs-work-with-64-bit-types.patch added to -mm tree |
| Date | 2015-09-24 16:30 +0200 |
| Message-ID | <qcfH4-5F3-13@gated-at.bofh.it> (permalink) |
| References | <qbSAP-5Me-31@gated-at.bofh.it> <qbSAP-5Me-29@gated-at.bofh.it> <qceUH-4uZ-19@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Thu, Sep 24, 2015 at 4:32 PM, Michal Nazarewicz <mina86@mina86.com> wrote:
> On Wed, Sep 23 2015, Alexey Dobriyan wrote:
>> I've sent kabs() before which didn't go in because it didn't work for
>> INT_MAX et al
>> (don't worry, this abs() doens't as well) but it is nicer that this
>> version in other aspects
>> (hopefully).
>>
>> [PATCH v2] Add kabs()
>> http://marc.info/?l=linux-kernel&m=133518745522740&w=4
>
> Perhaps:
>
> + (void)(_x))))))); \
>
> instead of:
>
> + _x)))))); \
>
> at the end. Since kabs makes no sense for unsigned types it’s best to
> fail with compile-time error than to let user think that the call is
> actually doing something.
I thought so, but the amount of uses like
unsigned int = abs(unsigned int - unsigned int)
is non trivial. With a few exceptions it is about 170 on
x86_64 allmodconfig. Most of them are correct because abs()
casts to signed first. So if you want to expose such uses,
then you are forced to write
unsigned int = kabs((int)(unsigned int - unsigned int));
Don't know if it's a good thing.
> Also, you don’t need ({ … }) around the ‘_x < 0 ? -_x : _x’ expression,
> do you?
Seems so, thank you for noticing.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: + kernelh-make-abs-work-with-64-bit-types.patch added to -mm tree Alexey Dobriyan <adobriyan@gmail.com> - 2015-09-23 15:50 +0200
Re: + kernelh-make-abs-work-with-64-bit-types.patch added to -mm tree Andrew Morton <akpm@linux-foundation.org> - 2015-09-23 22:10 +0200
Re: + kernelh-make-abs-work-with-64-bit-types.patch added to -mm tree Michal Nazarewicz <mina86@mina86.com> - 2015-09-24 15:40 +0200
Re: + kernelh-make-abs-work-with-64-bit-types.patch added to -mm tree Alexey Dobriyan <adobriyan@gmail.com> - 2015-09-24 16:30 +0200
Re: + kernelh-make-abs-work-with-64-bit-types.patch added to -mm tree Linus Torvalds <torvalds@linux-foundation.org> - 2015-09-24 20:10 +0200
Re: + kernelh-make-abs-work-with-64-bit-types.patch added to -mm tree Michal Nazarewicz <mina86@mina86.com> - 2015-09-25 18:40 +0200
csiph-web