[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Endianness macros capitalization
From: |
Javier Martín |
Subject: |
Re: Endianness macros capitalization |
Date: |
Sun, 06 Jul 2008 00:54:58 +0200 |
El sáb, 05-07-2008 a las 17:30 -0400, Pavel Roskin escribió:
> They probably should be functions. We may want to sparse annotate GRUB
> one day, and then inline functions in the only way to go.
Hmm... you mean changing this
#define grub_swap_bytes16(x) \
({ \
grub_uint16_t _x = (x); \
(grub_uint16_t) ((_x << 8) | (_x >> 8)); \
})
...for this
inline grub_uint16_t grub_swap_bytes16(uint16_t x)
{
return (x << 8) | (x >> 8);
}
and such? The pro is that we get rid of the ugly hack in the macro
version that ensures single evaluation, but a con is that we cannot
_force_ any random compiler to inline anything, so we might end up with
gross numbers of function calls.
By the way, what is "sparse annotate"?
signature.asc
Description: Esta parte del mensaje está firmada digitalmente
- Endianness macros capitalization, Javier Martín, 2008/07/05
- Re: Endianness macros capitalization, Pavel Roskin, 2008/07/05
- Re: Endianness macros capitalization,
Javier Martín <=
- Re: Endianness macros capitalization, Pavel Roskin, 2008/07/05
- Re: Endianness macros capitalization, Robert Millan, 2008/07/06
- Re: Endianness macros capitalization, Javier Martín, 2008/07/06
- Re: Endianness macros capitalization, Christian Franke, 2008/07/07
- Re: Endianness macros capitalization, Christian Franke, 2008/07/08
- Re: Endianness macros capitalization, Pavel Roskin, 2008/07/09
- Re: Endianness macros capitalization, Christian Franke, 2008/07/09
- Re: Endianness macros capitalization, Pavel Roskin, 2008/07/09
- Re: Endianness macros capitalization, Christian Franke, 2008/07/10
- Re: Endianness macros capitalization, Pavel Roskin, 2008/07/10