Kirill Korotaev c1217a75ea x86: mark read_crX() asm code as volatile
Some gcc versions (I checked at least 4.1.1 from RHEL5 & 4.1.2 from gentoo)
can generate incorrect code with read_crX()/write_crX() functions mix up,
due to cached results of read_crX().

The small app for x8664 below compiled with -O2 demonstrates this
(i686 does the same thing):
2007-10-17 20:15:31 +02:00
..
2007-10-17 08:42:55 -07:00
2007-10-17 08:42:55 -07:00
2007-10-17 08:42:55 -07:00
2007-10-17 08:42:55 -07:00
2007-10-17 08:42:55 -07:00
2007-10-17 08:42:55 -07:00
2007-10-17 08:42:55 -07:00
2007-10-17 08:42:55 -07:00
2007-08-18 17:15:17 -07:00
2007-07-18 16:53:49 +03:00
2007-10-16 16:57:46 +02:00
2007-07-26 11:35:16 -07:00