You are totally right. my fault on missing that detail.
On 2014-04-03 08:25, Samuel Thibault wrote:
dardeve...@cidadecool.com, le Thu 03 Apr 2014 00:37:05 +0200, a écrit :
however I could not avoid seeing strcmp function not checking for '\0'
in s2 and just s1,
No: if b happens to be 0 while
dardeve...@cidadecool.com, le Thu 03 Apr 2014 00:37:05 +0200, a écrit :
> however I could not avoid seeing strcmp function not checking for '\0'
> in s2 and just s1,
No: if b happens to be 0 while a is not, then the if (a!=b) is true and
we return a-b.
Samuel
The lost message due to redirect mistake on my part
Date: 2014-03-31 01:09
From: dardeve...@cidadecool.com
To: Justus Winter <4win...@informatik.uni-hamburg.de>
Hi everyone, Sorry I tend to be a standby watcher of the mailing list
however I could not avoid seeing strcmp function not checking for
Justus Winter, le Fri 28 Mar 2014 16:22:14 +0100, a écrit :
> Steal all string functions previously implemented in kern/strings.c
> from the libc. Those are most likely more optimized than our simple
> implementations.
Well, we used to do that in the past, actually, and ended up into
various kind
Samuel Thibault, le Fri 28 Mar 2014 16:33:39 +0100, a écrit :
> see a disassemble of memcpy, it ends up being a rep movsb
> %ds:(%esi),%es:(%edi), which is just exactly what we need to tell the
> processor).
Oops, sorry, wrong example, that one is coming from libc. Anyway,
relying on the host libc
Steal all string functions previously implemented in kern/strings.c
from the libc. Those are most likely more optimized than our simple
implementations.
* Makefile.am (clib_routines): Add memset, strcmp, strncmp, strcpy,
strncpy, and strlen.
* Makefrag.am (libkernel_a_SOURCES): Drop kern/strings.
You need to take care for the cases that might be (now or in the future)
using ifunc.