[Mono-bugs] [Bug 27375][Nor] Changed - checked() does not throw OverflowException

bugzilla-daemon@rocky.ximian.com bugzilla-daemon@rocky.ximian.com
24 Jul 2002 00:46:21 -0000


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 martin@gnome.org.

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

--- shadow/27375	Tue Jul 16 03:43:14 2002
+++ shadow/27375.tmp.18006	Tue Jul 23 20:46:21 2002
@@ -1,16 +1,16 @@
 Bug#: 27375
-Product: Mono/MCS
+Product: Mono/Runtime
 Version: unspecified
 OS: Red Hat 7.2
 OS Details: 
 Status: NEW   
 Resolution: 
 Severity: Unknown
 Priority: Normal
-Component: Misc
+Component: misc
 AssignedTo: mono-bugs@ximian.com                            
 ReportedBy: ndrochak@gol.com               
 QAContact: mono-bugs@ximian.com
 TargetMilestone: ---
 URL: 
 Cc: 
@@ -59,6 +59,40 @@
 the overflow check in x86.brg, but realized my patch was way too 
 simple and in the end didn't fix the problem.
 
 I'm still going to try to work this out before I go on vacation this 
 week.  Of course if someone smarter than me (that's most everyone) 
 wants to go ahead and show me how it's done, be my guest.
+
+------- Additional Comments From martin@gnome.org  2002-07-23 20:46 -------
+After comparing the csc and mcs output, I can confirm that this is 
+no mcs bug but a runtime bug. Both mcs and csc emit the same code in 
+the middle of the function:
+
+	IL_0040: ldloc.2 
+	IL_0041: ldc.i4.s 0x0a
+	IL_0043: conv.i8 
+	IL_0044: mul.ovf 
+	IL_0045: ldloc.3 
+	IL_0046: ldc.i4.s 0x30
+	IL_0048: sub.ovf 
+	IL_0049: conv.i8 
+	IL_004a: add.ovf 
+	IL_004b: stloc.2 
+	IL_004c: nop 
+	IL_004d: ldloc.s 4
+	IL_004f: ldc.i4.1 
+	IL_0050: add 
+	IL_0051: stloc.s 5
+	IL_0053: ldloc.s 5
+	IL_0055: stloc.s 4
+	IL_0057: ldloc.s 4
+	IL_0059: ldloc.1 
+	IL_005a: blt IL_0018
+
+I've run the csc output with the mono runtime and I don't get an 
+exception.  On the other hand, running the mcs generated code with 
+the ms runtime will trigger the exception.
+
+So I'll reassign this bug to the runtime.
+
+