public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* Emulating diab compiler behaviour memory-is-volatile
@ 2003-11-10  9:40 lapo_pasqui
  2003-11-10 12:42 ` Eljay Love-Jensen
  0 siblings, 1 reply; 2+ messages in thread
From: lapo_pasqui @ 2003-11-10  9:40 UTC (permalink / raw)
  To: gcc-help

Hi,
I'm trying to build an application written whith the diab compiler using  gcc
version 3.3.

The whole software has been written in the assumption every global variable
should be threaten as volatile, thanks to the diab compiler specific  option
-Xmemory-is-volatile.
As the diab manual states:
«Do not perform optimizations that can cause device drivers, etc.,
to fail. By default, the compiler keeps data in registers as long as
possible whenever it is safe. Difficulties can arise if a memory
location changes because it is mapped to an external hardware
device and the compiler, unaware of this change, continues to use
the old value that is stored in a register. These situations can be
handled with the keyword volatile. However, in order to allow
for the compilation of older programs - compiler provides the
-Xmemory-is-volatile option»

Do you know if there is a similar option in the gcc?

Thanks
   Lapo


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Emulating diab compiler behaviour memory-is-volatile
  2003-11-10  9:40 Emulating diab compiler behaviour memory-is-volatile lapo_pasqui
@ 2003-11-10 12:42 ` Eljay Love-Jensen
  0 siblings, 0 replies; 2+ messages in thread
From: Eljay Love-Jensen @ 2003-11-10 12:42 UTC (permalink / raw)
  To: lapo_pasqui, gcc-help

Hi Lapo,

Consider one or more of these switches:
-fvolatile-static       Consider all mem refs to static data to be volatile
-fvolatile-global       Consider all mem refs to global data to be volatile
-fvolatile              Consider all mem refs through pointers as volatile
-ffloat-store           Do not store floats in registers

The last one has the added benefit of being closer to IEEE 754 compliance, albeit at a performance penalty on some* platforms.

HTH,
--Eljay

* by "some" I mean "all the ones I work on". 


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-11-10 12:42 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-11-10  9:40 Emulating diab compiler behaviour memory-is-volatile lapo_pasqui
2003-11-10 12:42 ` Eljay Love-Jensen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).