[Mono-bugs] [Bug 81924][Wis] Changed - On big endian ARM IXP425 system: System.ArgumentException: Size is too big

bugzilla-daemon at bugzilla.ximian.com bugzilla-daemon at bugzilla.ximian.com
Wed Aug 29 07:36:17 EDT 2007


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 djenkins at mvista.com.

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

--- shadow/81924	2007-08-29 07:22:00.000000000 -0400
+++ shadow/81924.tmp.31081	2007-08-29 07:36:17.000000000 -0400
@@ -110,6 +110,24 @@
 We don't have access to big-endian arm systems to fix this issue.
 
 ------- Additional Comments From djenkins at mvista.com  2007-08-29 07:22 -------
 Created an attachment (id=19920)
 Fix to unsafe endian usage of union DVal in inssel-float.brg
 
+
+------- Additional Comments From djenkins at mvista.com  2007-08-29 07:36 -------
+See my attachment above for an unoffical patch to the endian issue in
+inssel-float.brg. Please consider adding it to trunk.
+
+Fix was tested on a big endian IPX420. Also used the Debian no fpu
+patch for the configure script.
+
+This only affects big endian systems using soft float in JIT.
+
+The issue is that Union DVal is not endian safe, the index into
+DVal.vlai must be swapped over for big endian systems. Therefore, the
+hard-coded index literals of 0 and 1 need replacing by #defines
+depending on G_BYTE_ORDER.
+
+JIT fails because the the float is thrown away in the implementation
+of OP_R4CONST and OP_R8CONST and is replaced by zero.
+


More information about the mono-bugs mailing list