[interp] add a conversion that is only required for 32bit
authorBernhard Urban <bernhard.urban@xamarin.com>
Wed, 17 May 2017 11:40:58 +0000 (13:40 +0200)
committerBernhard Urban <bernhard.urban@xamarin.com>
Wed, 17 May 2017 15:36:43 +0000 (17:36 +0200)
mono/mini/interp/transform.c

index 4ffb0d614559b0a0bc0d9c27d9b84804cad613d5..69ef2c13fb66d4d1096bd1342531cf1b54fafef2 100644 (file)
@@ -2267,6 +2267,9 @@ generate (MonoMethod *method, RuntimeMethod *rtm, unsigned char *is_bb_start, Mo
                        case STACK_TYPE_I4:
 #if SIZEOF_VOID_P == 8
                                ADD_CODE(&td, MINT_CONV_I8_U4);
+#elif SIZEOF_VOID_P == 4
+                               if (*td.ip == CEE_CONV_OVF_I_UN)
+                                       ADD_CODE(&td, MINT_CONV_OVF_I4_U4);
 #endif
                                break;
                        default: