Thread (1 message) 1 message, 1 author, 2007-12-21

Re: [TCP] IPV6 : Change a divide into a right shift in tcp_v6_send_ack()

From: Eric Dumazet <hidden>
Date: 2007-12-21 08:11:55

YOSHIFUJI Hideaki / 吉藤英明 a écrit :
In article [ref] (at Fri, 21 Dec 2007 08:06:32 +0100), Eric Dumazet [off-list ref] says:
quoted
YOSHIFUJI Hideaki / 吉藤英明 a écrit :
quoted
In article [ref] (at Fri, 21 Dec 2007 07:03:58 +0100), Eric Dumazet [off-list ref] says:
quoted
Because tot_len is signed in tcp_v6_send_ack(), tot_len/4 forces compiler
to emit an integer divide, while we can help it to use a right shift,
less expensive.
Are you really sure?
At least, gcc-4.1.2-20061115 (debian) does not make any difference.

And, IMHO, because shift for signed variable is fragile, so we should
avoid using it.
Yes I am sure, but maybe you are on x86_64 ?

gcc-4.2.2 on x86
I'm on gcc-4.1.2 20061115 (prerelease) (Debian 4.1.1-21), on x86 (i686).
Maybe compiler difference?!
hum, more probably a .config difference. Try with

CONFIG_CC_OPTIMIZE_FOR_SIZE=Y

(default config)

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help