2010-02-08 Zoltan Varga <vargaz@gmail.com>
[mono.git] / mono / mini / basic-long.cs
index 4436b6d1c98672fdcc3fb78906e1b27beb35e11a..5373a5ed92dd3f602f53b305fb96a9fa1d595e94 100644 (file)
@@ -349,6 +349,17 @@ class Tests {
                return (int)(a & 8);
        }
 
+       public static int get_high_bit (ulong a) {
+               if ((a & 0x8000000000000000) != 0)
+                       return 1;
+               return 0;
+       }
+
+       public static int test_1_and () {
+               ulong a = 0xabcd1234deadbeef;
+               return get_high_bit (a);
+       }
+
        public static int test_10_or () {
                long a = 8;
                long b = 2;             
@@ -1003,26 +1014,6 @@ class Tests {
                return 0;
        }
 
-       static long return_5low () {
-               return 5;
-       }
-       
-       static long return_5high () {
-               return 0x500000000;
-       }
-
-       public static int test_3_long_ret () {
-               long val = return_5low ();
-               return (int) (val - 2);
-       }
-
-       public static int test_1_long_ret2 () {
-               long val = return_5high ();
-               if (val > 0xffffffff)
-                       return 1;
-               return 0;
-       }
-
        public static int test_3_byte_cast () {
                ulong val = 0xff00ff00f0f0f0f0;
                byte b;
@@ -1191,5 +1182,13 @@ class Tests {
                        return (i == 0xdeadbeaf) ? 0 : 1;
                }
        }
+
+       public static int test_0_lconv_to_u2 () {
+               unchecked { 
+                       ulong value = (ulong)(short)-10;
+                       value = (ushort)value;
+                   return (value == 65526) ? 0 : 1;
+               }
+       }
 }