Hi Oliver,
On 3/19/06, Oliver Neukum <[email protected]> wrote:
> Yes it is. The generated code is identical. But on second thought this is still
> not optimal. A full division is generated:
>
> xorl %edx, %edx
> movl $2147483647, %eax
> movq $0, 40(%rsp)
> divq %rcx
> movl $8, %edx
> cmpq %rax, %rdx
> ja .L313
>
> Rewriting the test as:
> n!=0 && n > INT_MAX / size
> saves the division because size is much likelier to be a constant, and indeed
> the code is better:
>
> cmpq $268435455, %rax
> movq $0, 40(%rsp)
> ja .L313
>
> Is there anything I am missing?
Did you check allyesconfig vmlinux size before and after? If it helps,
like it probably does, post a patch!
Pekka
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]