Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

In mono/mini:

2007-12-09  Robert Jordan  <robertj@gmx.net>

	* mini-x86.c (mono_arch_emit_epilog):
	Consider all kinds of 64-bit types. Fixes #323114.

In mono/tests:
2007-12-09  Robert Jordan  <robertj@gmx.net>

	* bug-323114.cs: Add test case for #323114.


svn path=/trunk/mono/; revision=91007
  • Loading branch information...
commit c257eb6f051050b88b5b10d717d2c82c1aa72df6 1 parent 303b674
@robert-j robert-j authored
View
5 mono/mini/ChangeLog
@@ -1,3 +1,8 @@
+2007-12-09 Robert Jordan <robertj@gmx.net>
+
+ * mini-x86.c (mono_arch_emit_epilog):
+ Consider all kinds of 64-bit types. Fixes #323114.
+
2007-12-08 Zoltan Varga <vargaz@gmail.com>
* tramp-amd64.c (mono_arch_create_trampoline_code): Clean up the code a bit.
View
2  mono/mini/mini-x86.c
@@ -3914,7 +3914,7 @@ mono_arch_emit_epilog (MonoCompile *cfg)
x86_mov_mem_reg (code, lmf_tls_offset, X86_ECX, 4);
} else {
/* Find a spare register */
- switch (sig->ret->type) {
+ switch (mono_type_get_underlying_type (sig->ret)->type) {
case MONO_TYPE_I8:
case MONO_TYPE_U8:
prev_lmf_reg = X86_EDI;
View
4 mono/tests/ChangeLog
@@ -1,3 +1,7 @@
+2007-12-09 Robert Jordan <robertj@gmx.net>
+
+ * bug-323114.cs: Add test case for #323114.
+
2007-12-07 Zoltan Varga <vargaz@gmail.com>
* pinvoke2.cs: Fix the names of two tests.
View
1  mono/tests/Makefile.am
@@ -215,6 +215,7 @@ TEST_CS_SRC= \
bug-78653.cs \
bug-78656.cs \
bug-77127.cs \
+ bug-323114.cs \
bug-331958.cs \
interlocked.cs \
cross-domain.cs \
View
23 mono/tests/bug-323114.cs
@@ -0,0 +1,23 @@
+using System;
+
+public enum Enum64 : long
+{
+ A = Int64.MaxValue,
+}
+
+delegate Enum64 EnumDelegate (Enum64 value);
+
+class Test
+{
+ static Enum64 Method (Enum64 value)
+ {
+ return value;
+ }
+
+ static int Main ()
+ {
+ EnumDelegate d = new EnumDelegate (Method);
+ Enum64 r = d.EndInvoke (d.BeginInvoke (Enum64.A, null, null));
+ return r == Enum64.A ? 0 : 1;
+ }
+}
Please sign in to comment.
Something went wrong with that request. Please try again.