linux-stable-rt/arch/x86_64/kernel
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
..
acpi
cpufreq
Makefile
aperture.c
apic.c
asm-offsets.c
e820.c [PATCH] x86-64: Handle empty E820 regions correctly 2005-05-01 08:58:52 -07:00
early_printk.c [PATCH] make lots of things static 2005-05-01 08:59:29 -07:00
entry.S [PATCH] x86_64: interrupt handling fix 2005-05-01 08:58:51 -07:00
genapic.c
genapic_cluster.c
genapic_flat.c
head.S
head64.c [PATCH] x86_64: saved_command_line overflow fix 2005-05-01 08:58:52 -07:00
i387.c
i8259.c
init_task.c
io_apic.c [PATCH] check nmi watchdog is broken 2005-05-01 08:58:48 -07:00
ioport.c
irq.c
kprobes.c
ldt.c
mce.c
mce_intel.c
module.c [PATCH] uml: kludgy compilation fixes for x86-64 subarch modules support 2005-05-05 16:36:33 -07:00
mpparse.c
msr.c
nmi.c [PATCH] check nmi watchdog is broken 2005-05-01 08:58:48 -07:00
pci-dma.c
pci-gart.c
pci-nommu.c
process.c [PATCH] i386/x86_64 segment register access update 2005-05-01 08:58:48 -07:00
ptrace.c [AUDIT] Log correct syscall args for i386 processes on x86_64 2005-05-03 14:11:02 +01:00
reboot.c
semaphore.c
setup.c [PATCH] cpuid x87 bit on AMD falsely marked as PNI 2005-05-01 08:58:51 -07:00
setup64.c [PATCH] Increase number of e820 entries hard limit from 32 to 128 2005-05-01 08:58:51 -07:00
signal.c [PATCH] amd64 rt_sigframe user annotation 2005-04-26 07:43:42 -07:00
smp.c
smpboot.c
suspend.c
suspend_asm.S
sys_x86_64.c [PATCH] consolidate sys_shmat 2005-05-01 08:59:12 -07:00
syscall.c
time.c
trampoline.S
traps.c
vmlinux.lds.S
vsyscall.c
x8664_ksyms.c [PATCH] x86_64: make string func definition work as intended 2005-05-05 16:36:33 -07:00