Le samedi 08 janvier 2011 Ã 11:04 +0100, Jarek Poplawski a Ãcrit : > Just for the record: I agree with Paul that current code is more readable. > This code still requires thinking about specific bytes and the patch mixes > it only with word access. > > Jarek P. > > > @@ -395,16 +396,14 @@ mppe_compress(void *arg, unsigned char *ibuf, unsigned char *obuf, > > */ > > obuf[0] = PPP_ADDRESS(ibuf); > > obuf[1] = PPP_CONTROL(ibuf); > > - obuf[2] = PPP_COMP >> 8; /* isize + MPPE_OVHD + 1 */ > > - obuf[3] = PPP_COMP; /* isize + MPPE_OVHD + 2 */ > > + put_unaligned_be16(PPP_COMP, obuf + 2); > > obuf += PPP_HDRLEN; Compilers are stupid not generating optimal code, so we should help them a bit. Yes, I agree this is ugly Jarek and makes reading of this code a bit more complex, but this is a move we cannot stop. Number of functions, macros, etc... is exploding and we must follow the trend ;) 41 c6 44 24 02 00 movb $0x0,0x2(%r12) 41 c6 44 24 03 fd movb $0xfd,0x3(%r12) After patch : 66 41 c7 44 24 02 00 fd movw $0xfd00,0x2(%r12) -- To unsubscribe from this list: send the line "unsubscribe linux-ppp" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html