Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZoltan Varga <vargaz@gmail.com>2006-05-10 21:28:59 +0400
committerZoltan Varga <vargaz@gmail.com>2006-05-10 21:28:59 +0400
commit20889ba677ba3617e0f1ecbe9f026ee0b0d3f599 (patch)
treeab138576fd42f6cf51978ab7d8d325230e2b8191
parent81051c19f216499ed0080b191b25dd831c52fedf (diff)
Merge from HEAD.
svn path=/branches/mono-1-1-13/mono/; revision=60530
-rw-r--r--mono/mini/ChangeLog3
-rw-r--r--mono/mini/mini-x86.c6
2 files changed, 9 insertions, 0 deletions
diff --git a/mono/mini/ChangeLog b/mono/mini/ChangeLog
index 387a5fd673d..d04f0f7d43a 100644
--- a/mono/mini/ChangeLog
+++ b/mono/mini/ChangeLog
@@ -1,5 +1,8 @@
2006-05-10 Zoltan Varga <vargaz@gmail.com>
+ * mini-x86.c (mono_arch_instrument_epilog): Fix handling of
+ MONO_TYPE_GENERICINST.
+
* mini-ia64.c (get_call_info): Fix handling of MONO_TYPE_GENERICINST.
* mini-amd64.c (mono_arch_instrument_epilog): Ditto.
diff --git a/mono/mini/mini-x86.c b/mono/mini/mini-x86.c
index 1ae17a1a222..7c8462e02a5 100644
--- a/mono/mini/mini-x86.c
+++ b/mono/mini/mini-x86.c
@@ -1079,6 +1079,12 @@ mono_arch_instrument_epilog (MonoCompile *cfg, void *func, void *p, gboolean ena
case MONO_TYPE_R8:
save_mode = SAVE_FP;
break;
+ case MONO_TYPE_GENERICINST:
+ if (!mono_type_generic_inst_is_valuetype (mono_method_signature (method)->ret)) {
+ save_mode = SAVE_EAX;
+ break;
+ }
+ /* Fall through */
case MONO_TYPE_VALUETYPE:
save_mode = SAVE_STRUCT;
break;