This is the mail archive of the ecos-patches@sourceware.org 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: [PATCH] Speed-up sprintf() family of functions.


Jonathan Larmour <jifl@eCosCentric.com> writes:

> Sergei Organov wrote:
>>>
>>>Oh yes, I know there's a lot of things I would do very differently
>>>given the chance and the benefit of 10 more years of experience. There
>>>are many, many places the code could be improved (or rewritten!), and
>>>that is one.

Does anybody actually work on improving those things? From outside it
looks like kernel and libc development is stopped.

>>
>> I think I need to experiment on this then. Hopefully this eCos part is
>> usually compiled without -fno-builtins?
>
> Correct. The only times -fno-builtin is used normally is when we know
> GCC is buggy in some area (and therefore usually only temporarily).

No luck. GCC (I checked 4.0.2 for ARM) just calls memcpy() when the
number of bytes to copy is not a constant. For typically small sizes, I
think direct loop is still faster, and the initial rationale still
applies.

>
>>>Hmm, that kernel change did seem big enough to need one in my view. I
>>>think someone may have dropped the ball there. We would want an
>>>assignment for that, irrespective of this libc stdio change.
>>
>>
>> What kernel change are you talking about?
>
> It was the kernel change I referred to earlier in the thread. This one:
>
>  2006-04-10  Sergei Organov  <osv@javad.com>
>
>         Implement FIFO variant of scheduling of DSRs and make it the
>         default. This is reworked patch originally suggested by Stefan
>         Sommerfeld <sommerfeld@mikrom.com>.

Ah, those. So I was unlucky to send my patch before Stefan's has been
accepted ;) I myself consider that one trivial, being "common
knowledge", and mostly copy-pasted from pre-existing code.

Still wish to get an assignment?

-- Sergei.


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