Krzysztof Helt 94f6bac105 x86: do not allow to optimize flag_is_changeable_p() (rev. 2)
The flag_is_changeable_p() is used by
has_cpuid_p() which can return different results
in the code sequence below:

 if (!have_cpuid_p())
      identify_cpu_without_cpuid(c);

  /* cyrix could have cpuid enabled via c_identify()*/
  if (!have_cpuid_p())
      return;

Otherwise, the gcc 3.4.6 optimizes these two calls
into one which make the code not working correctly.

Cyrix cpus have the CPUID instruction enabled before
the second call to the have_cpuid_p() but
it is not detected due to the gcc optimization.
Thus the ARR registers (mtrr like) are not detected
on such a cpu.

Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
2008-10-13 10:33:13 +02:00
..
2008-10-12 12:43:21 +02:00
2007-10-19 11:53:33 -07:00
2008-06-19 13:31:42 +02:00
2008-01-30 13:31:19 +01:00
2008-10-03 10:18:30 +02:00
2008-09-29 10:04:53 +02:00
2008-10-13 10:21:10 +02:00
2008-04-26 17:35:47 +02:00
2008-07-22 14:35:57 +02:00
2008-10-13 10:22:44 +02:00
2008-10-12 12:37:32 +02:00
2008-08-15 08:35:43 -07:00
2008-07-26 12:00:04 -07:00
2008-10-12 12:37:32 +02:00
2008-08-25 12:31:32 +02:00
2008-06-12 18:05:42 -07:00
2008-08-25 10:59:18 +02:00
2008-07-16 12:15:17 -07:00
2008-07-26 16:31:35 +02:00
2008-07-22 14:35:57 +02:00
2008-07-22 21:53:53 +02:00
2008-09-05 17:44:08 +02:00
2008-07-22 14:35:57 +02:00
2008-01-30 13:31:52 +01:00
2008-08-21 10:01:52 +02:00
2008-07-22 14:35:57 +02:00