Skip to main content

Timeline for Why does volatile exist?

Current License: CC BY-SA 3.0

6 events
when toggle format what by license comment
Nov 22, 2019 at 22:56 comment added curiousguy Volatile is very rarely adequate for control of external devices. Its semantics is wrong for modern MMIO: you have to make too many objects volatile and it hurts optimization. But modern MMIO behaves like normal memory until a flag is set so volatile should not be needed. Many drivers don't ever use volatile.
Oct 20, 2012 at 17:04 history edited ChrisN CC BY-SA 3.0
updated to reflect the change in question title
Jan 13, 2009 at 5:13 comment added Martin Beckett The only time I ever needed it on an 8bit ISA bus where you read the same address twice - the compiler had a bug and ignored it (early Zortech c++)
Sep 16, 2008 at 14:14 history edited ChrisN CC BY-SA 2.5
Added device drivers
Sep 16, 2008 at 14:11 comment added Mladen Janković This is not only valid for embedded systems but for all device drivers development.
Sep 16, 2008 at 14:01 history answered ChrisN CC BY-SA 2.5