Re: [patch 4/21] fix ARCH_HAS_PREFETCH

H. Peter Anvin (hpa@zytor.com)
Wed, 14 Aug 2002 14:13:23 -0700


Willy Tarreau wrote:
>>>
>>
>>#define __nop() asm volatile("")
>
> and if you want to pass arguments, to guarantee that no optimization will
> be done, even on loop constants ?
> eg:
> for (i = 0; i < N; i++) {
> j++;
> __nop();
> }
>
> -> might be optimized this way :
> j = N;
> for (i = 0; i < N; i++) {
> __nop();
> }
>
> Perhaps using a volatile for j ?
>

OK, what are you trying to accomplish by this?

But if you wanted to, you could do:

for ( i = 0 ; i < N ; i++ ) {
j++;
asm volatile("" : "=g" (j));
}

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/