This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Enabling -O2 option of GCC]


David Webster wrote:
> 
> An efficient memcpy is something that is processor specific (sometimes
> even target specific depending on memory widths etc) - so it's most
> sensible for eCos infra to supply a generic memcpy that's adequate and
> let the compiler/processor/target override it with its own if necessary.

Yes it should, and there's no good reason it hasn't except for lack of
time, and in the past a certain amount of disagreement about where such
optimized standard functions should live. The latter problem is greatly
helped now that the isoinfra package exists.

You can get an efficient hand-written assembler memcpy for ARM from newlib
for example. The same is true for most other architectures. We can use
these versions freely in eCos.

http://sources.redhat.com/cgi-bin/cvsweb.cgi/src/newlib/libc/machine/xscale/memcpy.c?rev=1.1&content-type=text/x-cvsweb-markup&cvsroot=src

( yes I know it says xscale, but it's ARM too really - it's just that
xscale.h defines away PRELOADSTR).

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]