On 12-12-07 12:20, [EMAIL PROTECTED] wrote:
Here are a variety of machines:
Thanks much for all! Collecting all data now...
With -O2, the cycle counts come out (before division) as out: 0xFFFFFFFFFFEA6F4F in: 0xFFFFFFFFFCE68BB6 I think the "A" constraint doesn't work quite the same in 64-bit code. The compiler seems to be using %rdx rather than %edx:%eax.
Yes indeed, that tripped me up. Have been using the "=A" locally for a while for similar timing tests. Will use a manual "=a" (lo), "=d" (hi) I guess for amd64 compatibility from now on.
If I'd care deeply I'd probably categorize this as a backwards compatibility bug in GCC though. Things were probably never guaranteed but they certainly worked that way...
Rene. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/