[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [avr-gcc-list] [FIX] _clz and friends not found (test builtin-bitops
From: |
Dmitry K. |
Subject: |
Re: [avr-gcc-list] [FIX] _clz and friends not found (test builtin-bitops-1) |
Date: |
Tue, 29 Jan 2008 08:10:10 +1000 |
User-agent: |
KMail/1.5 |
On Friday 25 January 2008 22:35, Wouter van Gulik wrote:
> __clzqi2:
> clr r_count ; load with 0
> com r_count ; invert (load with -1) + set carry
> __clzqi2_loop:
> rol r_arg1L ; Rotate through carry
> inc r_count ; Carry not touch by inc
> brcc __clzqi2_loop ; Branch on no carry
That is splendid!
After a superficial view:
. A short rcall/rjmp is not safe with unknown (big) library
for intermodule link. Also a conditional branch.
. Are this function intended for math functions? If so,
the strong size optimization is not a best solution (IMHO).
An addition of few words may speed up in few times for
some 32/16-bit functions.
Regards,
Dmitry.