El dom, 06-07-2008 a las 20:30 +0200, Robert Millan escribió: > On Sun, Jul 06, 2008 at 12:54:58AM +0200, Javier Martín wrote: > > 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); > > } > > I know I get to be annoying about this, but which of these two (plus the > non-inline version) would result in _smaller_ code? > > Function calls on i386-pc are cheap (because we use the regparm hack), so > maybe it'd work better using normal functions. > If we are to take the space-saving route, the best we can do is turn them to functions, maybe even _without_ the "inline" keyword, and GCC will do what's best.
signature.asc
Description: Esta parte del mensaje está firmada digitalmente
_______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel