No subject


Fri Dec 16 10:55:44 CET 2011


as it supplies the needed functions.


Still we have to check if this is the best way with respect to the
different architectures we support. We face a lot of code overhead and
speed decrease because of the width of different architectures.

If we export functions like
int MyFunc( int, int)
we force AVR to always use its two 16 bit registers to be used and
always 16 bit math is applied to the values.

So we could say
int8_t MyFunc( int8_t, int8_t)
but then we produce a lot of overhead for ARM and some overhead for Cortex.

Unfortunately AVR is the architecture that needs most care to be taken
to keep speed high and flash footprint low.

I have actually no idea of how to split and merge that without
compromizes on the one or on the other side.

Ulrich

Am 12.12.2011 13:55, schrieb Uwe Bonnes:
> Hello,
> 
> working with the devnit_m3n tree, please forgive if already fixed in
> trunk...
> 
> ../nut/os/nutinit.c
> 
> includes e.g.
> #elif defined(__arm__) && defined(__CORTEX__)
> #include "../arch/cm3/os/nutinit_cm3.c"
> 
> Changing "../arch/cm3/os/nutinit_cm3.c" and running "make" in the build tree
> doesn't rebuild nutinit.o. I workaround by deleting os/nutinit.o and
> rebuilding.
> 
> Is there an easy way to add the included files to the dependancy? Or, as
> there is no code in nut/os/nutinit.c, but only includes, could we drop this
> wrapper file and use the included files direct?
> 
> Thanks
> 


More information about the En-Nut-Discussion mailing list