[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <12943ce306ab975fd589bbf5e8b14167@kernel.crashing.org>
Date: Sat, 11 Aug 2007 02:50:25 +0200
From: Segher Boessenkool <segher@...nel.crashing.org>
To: Herbert Xu <herbert@...dor.apana.org.au>
Cc: paulmck@...ux.vnet.ibm.com, heiko.carstens@...ibm.com,
horms@...ge.net.au, linux-kernel@...r.kernel.org,
csnook@...hat.com, rpjday@...dspring.com, netdev@...r.kernel.org,
ak@...e.de, cfriesen@...tel.com, akpm@...ux-foundation.org,
torvalds@...ux-foundation.org, jesper.juhl@...il.com,
linux-arch@...r.kernel.org, zlynx@....org, schwidefsky@...ibm.com,
davem@...emloft.net, wensong@...ux-vs.org, wjiang@...ilience.com
Subject: Re: [PATCH 1/24] make atomic_read() behave consistently on alpha
>>>> That means GCC cannot compile Linux; it already optimises
>>>> some accesses to scalars to smaller accesses when it knows
>>>> it is allowed to. Not often though, since it hardly ever
>>>> helps in the cost model it employs.
>>>
>>> Please give an example code snippet + gcc version + arch
>>> to back this up.
>>
>> unsigned char f(unsigned long *p)
>> {
>> return *p & 1;
>> }
>
> This doesn't really matter since we only care about the LSB.
It is exactly what I claimed, and what you asked proof of.
> Do you have an example where gcc reads it non-atmoically and
> we care about all parts?
Like I explained in the original mail; no, I suspect such
a testcase will be really hard to construct, esp. as a small
testcase. I have no reason to believe it is impossible to
do so though -- maybe someone else can write trickier code
than I can, in which case, please do so.
Segher
-
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