[Mono-bugs] [Bug 42237][Min] New - Mono generates Pentium Pro specific code on AMD processors with -O=all

bugzilla-daemon@rocky.ximian.com bugzilla-daemon@rocky.ximian.com
Thu, 1 May 2003 18:47:42 -0400 (EDT)


Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by ramon_garcia_f@terra.es.

http://bugzilla.ximian.com/show_bug.cgi?id=42237

--- shadow/42237	Thu May  1 18:47:41 2003
+++ shadow/42237.tmp.6252	Thu May  1 18:47:41 2003
@@ -0,0 +1,31 @@
+Bug#: 42237
+Product: Mono/Runtime
+Version: unspecified
+OS: 
+OS Details: 
+Status: NEW   
+Resolution: 
+Severity: 
+Priority: Minor
+Component: misc
+AssignedTo: mono-bugs@ximian.com                            
+ReportedBy: ramon_garcia_f@terra.es               
+QAContact: mono-bugs@ximian.com
+TargetMilestone: ---
+URL: 
+Cc: 
+Summary: Mono generates Pentium Pro specific code on AMD processors with -O=all
+
+When invoked with -O=all, Mono generates code that crashes in a AMD K6 
+processor. The problem is caused by optimizations cmov and fcmov that cause
+the JIT to issue instructions that require Pentium Pro compatible processors.
+
+The problem can be fixed by invoking Mono with -O=all,-cmov,-fcmov
+
+Mono should autodect a K6 processor and disable generation of incompatible
+codes.
+
+The problem can be reproduced on a K6 machine running:
+
+mono --aot -O=all /usr/local/lib/corlib.dll => crash with SIGILL (illegal
+instruction)