X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmini%2Fdecompose.c;h=9546009e724697247abc5e7e3e11ff1f67c8e685;hb=3544fc56904e06123287d621fa4a091f27c4230d;hp=10c8c75e134d359dd829d023521131246a1f8f67;hpb=51c8a6e1a97aa8bab8f8f0e22518271da7fcfa01;p=mono.git diff --git a/mono/mini/decompose.c b/mono/mini/decompose.c index 10c8c75e134..9546009e724 100644 --- a/mono/mini/decompose.c +++ b/mono/mini/decompose.c @@ -6,6 +6,7 @@ * * (C) 2002 Ximian, Inc. * Copyright 2011 Xamarin, Inc (http://www.xamarin.com) + * Licensed under the MIT license. See LICENSE file in the project root for full license information. */ #include "mini.h" @@ -932,6 +933,8 @@ mono_decompose_long_opts (MonoCompile *cfg) MONO_EMIT_NEW_BIALU_IMM (cfg, OP_XOR_IMM, MONO_LVREG_LS (tree->dreg), MONO_LVREG_LS (tree->sreg1), tree->inst_ls_word); MONO_EMIT_NEW_BIALU_IMM (cfg, OP_XOR_IMM, MONO_LVREG_MS (tree->dreg), MONO_LVREG_MS (tree->sreg1), tree->inst_ms_word); break; +#ifdef TARGET_POWERPC +/* FIXME This is normally handled in cprop. Proper fix or remove if no longer needed. */ case OP_LSHR_UN_IMM: if (tree->inst_c1 == 32) { @@ -940,20 +943,12 @@ mono_decompose_long_opts (MonoCompile *cfg) * later apply the speedup to the left shift as well * See BUG# 57957. */ - /* FIXME: Move this to the strength reduction pass */ /* just move the upper half to the lower and zero the high word */ MONO_EMIT_NEW_UNALU (cfg, OP_MOVE, MONO_LVREG_LS (tree->dreg), MONO_LVREG_MS (tree->sreg1)); MONO_EMIT_NEW_ICONST (cfg, MONO_LVREG_MS (tree->dreg), 0); } break; - case OP_LSHL_IMM: - if (tree->inst_c1 == 32) { - /* just move the lower half to the upper and zero the lower word */ - MONO_EMIT_NEW_UNALU (cfg, OP_MOVE, MONO_LVREG_MS (tree->dreg), MONO_LVREG_LS (tree->sreg1)); - MONO_EMIT_NEW_ICONST (cfg, MONO_LVREG_LS (tree->dreg), 0); - } - break; - +#endif case OP_LCOMPARE: { MonoInst *next = mono_inst_next (tree, FILTER_IL_SEQ_POINT);