avr-libc-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [avr-libc-dev] Even faster decimal code


From: Georg-Johann Lay
Subject: Re: [avr-libc-dev] Even faster decimal code
Date: Sun, 01 Jan 2017 22:11:27 +0100
User-agent: Thunderbird 2.0.0.24 (Windows/20100228)

George Spelvin schrieb:
Georg-Johann Lay wrote:
We only have multilib granularity, and there are not so many features
that are related to the flash size.  One is __AVR_HAVE_JMP_CALL__ which
applies to devices with >= 16 KiB flash.  The next size milestone is
__AVR_HAVE_ELPM__ which means >= 128 KiB.  The JMP + CALL looks
reasonable to me; I used it for 64-bit divisions in libgcc (which leads
to the funny situation that 64-bit division might run faster than a
32-bit division for the same values).

Interesting suggestion.  I could just use the multiplierless base-100 code,
which is smaller and still reasonably fast.

And thank you very much!  I knew that HAVE_JUMP_CALL meant that RJMP/RCALL
range wasn't enough, which means more than 12 bits of PC (2^13 bytes of
flash), but it had gotten lost in the forest of confusion.

I'm befuddled by all of the different architecture options and don't
understand the difference between most of them.  I've been slowly
downloading data sheets for different examples from gcc's list and
looking for differences, but it's a laborious process.  (That document
on avr-tiny started out with me documenting my realization that avr1
was something else.)

For example, does MUL support imply MOVW support?  (I've been assuming
so, but that's an easy edit.)

gcc sources provide a good overview of features per core, cf.

http://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/avr/avr-devices.c?revision=243994&view=markup

A bit more comments for the structure which is initialized with
that data:

http://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/avr/avr-arch.h?revision=243994&view=markup#l51

The devices are here:

http://gcc.gnu.org/viewcvs/gcc/trunk/gcc/config/avr/avr-mcus.def?revision=243994&view=markup

Johann





reply via email to

[Prev in Thread] Current Thread [Next in Thread]