[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <49BBD619.6050809@davidnewall.com>
Date: Sun, 15 Mar 2009 02:36:49 +1030
From: David Newall <davidn@...idnewall.com>
To: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Screwy arch/x86/include/asm/string_32.h
There's a lot of weirdness in __constant_memcpy in
arch/x86/include/asm/string_32.h (2.6.29-rc7).
1. The first switch is missing a case for n equal 7.
2. When n < 20, the four tests (n > 16, n > 12, n > 8 & n > 4)
execute identical statements; always 'asm volatile("movsl" :
"=&D"(edi), "=&S"(esi) : "0"(edi), "1"(esi) : "memory")'.
I think it copies less than 4 bytes for values of n between 9 and 19.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists