This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: msp430 port
- From: Mike Stump <mikestump at comcast dot net>
- To: Jeff Law <law at redhat dot com>
- Cc: DJ Delorie <dj at redhat dot com>, rth at redhat dot com, nickc at redhat dot com, gcc-patches at gcc dot gnu dot org
- Date: Mon, 19 Aug 2013 18:04:42 -0700
- Subject: Re: msp430 port
- References: <51E700D1 dot 702 at redhat dot com> <201307232208 dot r6NM8QpY018297 at greed dot delorie dot com> <51F81F81 dot 4070303 at redhat dot com> <201307310324 dot r6V3OkjY005420 at greed dot delorie dot com> <52127E4D dot 1030901 at redhat dot com> <201308192049 dot r7JKnS2E029457 at greed dot delorie dot com> <52128615 dot 9080405 at redhat dot com>
On Aug 19, 2013, at 1:54 PM, Jeff Law <law@redhat.com> wrote:
> On 08/19/2013 02:49 PM, DJ Delorie wrote:
>>> I'd say it's not as simple as you make it out to be. You can't blindly
>>> combine operations on volatile memory.
>>
>> I'm not blindly combining them, I'm combining them when I know the
>> hardware will do the volatile-correct thing.
> You're missing the point. If the programmer wrote two statements which hit volatile memory and you've got some pattern which matches those two statements, then with your change you'll end up combining them, that's wrong.
Give a specific example. I don't buy this. Support your position with the semantics of the code given the change, and the semantics as required by the language standard.
> I fully understand that. But that doesn't change the fact that if the programmer wrote separate statements with volatile operands you can't combine them.
Again you say this with no backing what-so-ever.
> You simply don't have enough context at any point to know if what you're doing is safe or not.
Then, you can give a concrete example of code that will fail.