[M3commit] CVS Update: cm3
Tony Hosking
hosking at cs.purdue.edu
Sun Jul 4 02:49:11 CEST 2010
On 3 Jul 2010, at 20:42, Jay K wrote:
> Not a multiprocessor.
> Still interested in selective volatile?
Not really. This says its something even more troubling unless it happens with the optimiser.
> This all bothers me too.
> I don't want volatile. It makes the optimized code terrible.
Agreed.
> But I don't want to debug any problem from removing it, beyond compilation failure.
>
>
> I can try a few things.
> This is all wierd. I swear I saw it hang several times.
> I swear I'm trying to to change "too many" variables at a time. Yes, I know, 2 is too many.
>
>
> Once I started getting version stamp mismatch, I resorted to using a cross built cm3.
> Out of necessity sort of, but that causes more flucuation of variables.
>
> Let me try again with volatile and see if it is solid.
> Then I'll try with only volatile stores.
>
> I've been trying optimized and unoptimized, and not kept good track of which when.
>
>
> - Jay
>
>
> ----------------------------------------
>> From: hosking at cs.purdue.edu
>> Date: Sat, 3 Jul 2010 20:36:20 -0400
>> To: jkrell at elego.de
>> CC: m3commit at elegosoft.com
>> Subject: Re: [M3commit] CVS Update: cm3
>>
>> I am very disturbed that volatile is needed here. Can we selectively turn it on for thread-critical files like ThreadPThread and see if it fixes the problem. I wonder if the double-checked locking is broken for PPC memory model. Is this on a multi-processor?
>>
>> On 3 Jul 2010, at 12:57, Jay Krell wrote:
>>
>>> CVSROOT: /usr/cvs
>>> Changes by: jkrell at birch. 10/07/03 12:57:09
>>>
>>> Modified files:
>>> cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c
>>>
>>> Log message:
>>> restore volatile for powerpc and powerpc64 platforms
>>> This seems to fix PPC_LINUX hanging.
>>> This needs further debugging, but I'm not eager.
>>> This will also affect PPC_DARWIN, PPC64_DARWIN, PPC32_OPENBSD,
>>> PPC32_NETBSD, PPC32_FREEBSD, etc., but these platforms are little used or
>>> nonexistant.
>>>
>>> Having volatile like has been the very long standing situation though.
>>> The result is that the optimizer does basically nothing.
>>
>
More information about the M3commit
mailing list