This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: msp430 port


On 08/19/2013 07:04 PM, Mike Stump wrote:
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.
I'd have to dig out mail archives from the early 90s and hope I kept the discussion. That involves pulling an HP R390 out from under the stairs to fire it up, at which point I tend to lose interest right quick due to its weight. Not to mention that last time I fired it up I couldn't remember any of the passwords to login ;(

My recollection is I suggested or was investigating something similar back in the early 90s. I can't recall if someone shot me down or my own investigations came up with a testcase which failed.

I'll withdraw my objection to the msp port's hacking of volatile_ok. If someone is going to push for the change in a more general sense, we'll need to discuss further.





jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]