return (int)a;
}
+
+ public static int test_32_conv_to_u4 () {
+ long a = 32;
+
+ return (int)(uint)a;
+ }
+
+ public static int test_15_conv_to_u4_2 () {
+ long a = 0x10000000f;
+
+ return (int)(uint)a;
+ }
+
public static int test_0_conv_from_i4 () {
long a = 2;
if (a != 2)
return (int)((a - 1) + 1);
}
+ public static int test_0_add_ovf () {
+ long i, j, k;
+
+ checked {
+ i = System.Int64.MinValue;
+ j = 0;
+ k = i + j;
+ }
+
+ if (k != System.Int64.MinValue)
+ return 1;
+
+ checked {
+ i = System.Int64.MaxValue;
+ j = 0;
+ k = i + j;
+ }
+
+ if (k != System.Int64.MaxValue)
+ return 2;
+
+ checked {
+ i = System.Int64.MinValue;
+ j = System.Int64.MaxValue;
+ k = i + j;
+ }
+
+ if (k != -1)
+ return 3;
+
+ checked {
+ i = System.Int64.MaxValue;
+ j = System.Int64.MinValue;
+ k = i + j;
+ }
+
+ if (k != -1)
+ return 4;
+
+ checked {
+ i = System.Int64.MinValue + 1234;
+ j = -1234;
+ k = i + j;
+ }
+
+ if (k != System.Int64.MinValue)
+ return 5;
+
+ checked {
+ i = System.Int64.MaxValue - 1234;
+ j = 1234;
+ k = i + j;
+ }
+
+ if (k != System.Int64.MaxValue)
+ return 6;
+
+ return 0;
+ }
+
+ public static int test_0_add_un_ovf () {
+ ulong n = (ulong)134217728 * 16;
+ ulong number = checked (n + (uint)0);
+
+ return number == n ? 0 : 1;
+ }
+
+ public static int test_0_sub_ovf () {
+ long i, j, k;
+
+ checked {
+ i = System.Int64.MinValue;
+ j = 0;
+ k = i - j;
+ }
+
+ if (k != System.Int64.MinValue)
+ return 1;
+
+ checked {
+ i = System.Int64.MaxValue;
+ j = 0;
+ k = i - j;
+ }
+
+ if (k != System.Int64.MaxValue)
+ return 2;
+
+ checked {
+ i = System.Int64.MinValue;
+ j = System.Int64.MinValue + 1234;
+ k = i - j;
+ }
+
+ if (k != -1234)
+ return 3;
+
+ checked {
+ i = System.Int64.MaxValue;
+ j = 1234;
+ k = i - j;
+ }
+
+ if (k != System.Int64.MaxValue - 1234)
+ return 4;
+
+ checked {
+ i = System.Int64.MaxValue - 1234;
+ j = -1234;
+ k = i - j;
+ }
+
+ if (k != System.Int64.MaxValue)
+ return 5;
+
+ checked {
+ i = System.Int64.MinValue + 1234;
+ j = 1234;
+ k = i - j;
+ }
+
+ if (k != System.Int64.MinValue)
+ return 6;
+
+ return 0;
+ }
+
+ public static int test_0_sub_ovf_un () {
+ ulong i, j, k;
+
+ checked {
+ i = System.UInt64.MaxValue;
+ j = 0;
+ k = i - j;
+ }
+
+ if (k != System.UInt64.MaxValue)
+ return 1;
+
+ checked {
+ i = System.UInt64.MaxValue;
+ j = System.UInt64.MaxValue;
+ k = i - j;
+ }
+
+ if (k != 0)
+ return 2;
+
+ return 0;
+ }
+
public static int test_2_neg () {
long a = -2;
return (int)(-a);
}
}
- public static int test_0_shl () {
- long a = 9;
- int b = 1;
-
- if ((a >> b) != 4)
- return 1;
-
-
- return 0;
- }
-
- public static int test_1_rshift ()
- {
- long a = 9;
- int b = 1;
- a = -9;
- if ((a >> b) != -5)
- return 0;
- return 1;
- }
-
public static int test_5_shift ()
{
long a = 9;
}
return (int)res;
}
+
+ public static int test_0_mul_imm () {
+ long i = 4;
+
+ if ((i * 0) != 0)
+ return 1;
+ if ((i * 1) != 4)
+ return 2;
+ if ((i * 2) != 8)
+ return 3;
+ if ((i * 3) != 12)
+ return 4;
+ if ((i * 1234) != 4936)
+ return 5;
+ if ((i * -1) != -4)
+ return 6;
+ if ((i * -2) != -8)
+ return 7;
+ if ((i * -3) != -12)
+ return 8;
+ if ((i * -1234) != -4936)
+ return 9;
+
+ return 0;
+ }
+
+ public static int test_0_mul_imm_opt ()
+ {
+ long i;
+
+ i = 1;
+ if ((i * 2) != 2)
+ return 1;
+ i = -1;
+ if ((i * 2) != -2)
+ return 2;
+ i = 1;
+ if ((i * 3) != 3)
+ return 3;
+ i = -1;
+ if ((i * 3) != -3)
+ return 4;
+ i = 1;
+ if ((i * 5) != 5)
+ return 5;
+ i = -1;
+ if ((i * 5) != -5)
+ return 6;
+ i = 1;
+ if ((i * 6) != 6)
+ return 7;
+ i = -1;
+ if ((i * 6) != -6)
+ return 8;
+ i = 1;
+ if ((i * 9) != 9)
+ return 9;
+ i = -1;
+ if ((i * 9) != -9)
+ return 10;
+ i = 1;
+ if ((i * 10) != 10)
+ return 11;
+ i = -1;
+ if ((i * 10) != -10)
+ return 12;
+ i = 1;
+ if ((i * 12) != 12)
+ return 13;
+ i = -1;
+ if ((i * 12) != -12)
+ return 14;
+ i = 1;
+ if ((i * 25) != 25)
+ return 15;
+ i = -1;
+ if ((i * 25) != -25)
+ return 16;
+ i = 1;
+ if ((i * 100) != 100)
+ return 17;
+ i = -1;
+ if ((i * 100) != -100)
+ return 18;
+
+ return 0;
+ }
public static int test_4_divun () {
uint b = 12;
return 0;
}
- public static int test_71_long_shift_right () {
- ulong value = 38654838087;
- int x = 0;
- byte [] buffer = new byte [1];
- buffer [x] = ((byte)(value >> x));
- return buffer [x];
- }
-
public static int test_0_ulong_regress () {
ulong u = 4257145737;
u --;
return (u == 4257145736) ? 0 : 1;
}
- static long x;
- public static int test_0_addsub_mem ()
- {
- x = 0;
- x += 5;
-
- if (x != 5)
- return 1;
-
- x -= 10;
-
- if (x != -5)
- return 2;
-
- return 0;
- }
-
- static ulong y;
- public static int test_0_sh32_mem ()
- {
- y = 0x0102130405060708;
- y >>= 32;
-
- if (y != 0x01021304)
- return 1;
-
- y = 0x0102130405060708;
- y <<= 32;
-
- if (y != 0x0506070800000000)
- return 2;
-
- x = 0x0102130405060708;
- x <<= 32;
-
- if (x != 0x0506070800000000)
- return 2;
-
- return 0;
- }
-
public static int test_0_assemble_long ()
{
uint a = 5;