linux-hardened/lib
Paolo 'Blaisorblade' Giarrusso 0c28130b5c [PATCH] x86_64: make string func definition work as intended
In include/asm-x86_64/string.h there are such comments:

/* Use C out of line version for memcmp */
#define memcmp __builtin_memcmp
int memcmp(const void * cs,const void * ct,size_t count);

This would mean that if the compiler does not decide to use __builtin_memcmp,
it emits a call to memcmp to be satisfied by the C out-of-line version in
lib/string.c.  What happens is that after preprocessing, in lib/string.i you
may find the definition of "__builtin_strcmp".

Actually, by accident, in the object you will find the definition of strcmp
and such (maybe a trick intended to redirect calls to __builtin_memcmp to the
default memcmp when the definition is not expanded); however, this particular
case is not a documented feature as far as I can see.

Also, the EXPORT_SYMBOL does not work, so it's duplicated in the arch.

I simply added some #undef to lib/string.c and removed the (now duplicated)
exports in x86-64 and UML/x86_64 subarchs (the second ones are introduced by
another patch I just posted for -mm).

Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
CC: Andi Kleen <ak@suse.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-05-05 16:36:33 -07:00
..
reed_solomon Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
zlib_deflate Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
zlib_inflate Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bitmap.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
bust_spinlocks.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
cmdline.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
crc-ccitt.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
crc32.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
crc32defs.h Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
ctype.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
dec_and_lock.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
div64.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
dump_stack.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
errno.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
extable.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
find_next_bit.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
gen_crc32table.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
halfmd4.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
idr.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
inflate.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
int_sqrt.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
iomap.c [PATCH] add Big Endian variants of ioread/iowrite 2005-04-16 15:25:54 -07:00
Kconfig Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Kconfig.debug [PATCH] remove all kernel BUGs 2005-05-01 08:59:01 -07:00
kernel_lock.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
kobject.c [PATCH] DocBook: fix some descriptions 2005-05-01 08:59:26 -07:00
kobject_uevent.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
kref.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
libcrc32c.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
Makefile Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
parser.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
prio_tree.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
radix-tree.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rbtree.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
rwsem-spinlock.c [PATCH] use smp_mb/wmb/rmb where possible 2005-05-01 08:58:47 -07:00
rwsem.c [PATCH] use smp_mb/wmb/rmb where possible 2005-05-01 08:58:47 -07:00
sha1.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
sort.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
string.c [PATCH] x86_64: make string func definition work as intended 2005-05-05 16:36:33 -07:00
vsprintf.c Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00