* the IL code looks.
*/
-class Tests {
+#if __MOBILE__
+class LongTests
+#else
+class Tests
+#endif
+{
- public static int Main () {
- return TestDriver.RunTests (typeof (Tests));
+#if !__MOBILE__
+ public static int Main (string[] args) {
+ return TestDriver.RunTests (typeof (Tests), args);
}
+#endif
public static int test_10_simple_cast () {
long a = 10;
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;
return (value == 65526) ? 0 : 1;
}
}
+
+ public static int test_0_lneg_regress_10320 () {
+ long a = 0x100000000;
+ ulong c = ((ulong) (-(-a))) >> 32;
+ return c == 1 ? 0 : 1;
+ }
+
+ public static int test_6_lrem_un () {
+ ulong r2 = 4294967296;
+ uint d = 10;
+ ulong res = r2 % d;
+
+ return (int)res;
+ }
+
+ public static int test_0_lrem_imm_1 () {
+ long b = 12L;
+ return (int)(b % 1L);
+ }
+
+ public static int test_0_lrem_imm_1_neg () {
+ long b = -2L;
+ return (int)(b % 1L);
+ }
+
+ public static int test_0_lrem_imm_2 ()
+ {
+ long x = 245345634L;
+ return (int)(x % 2L);
+ }
+
+ public static int test_1_lrem_imm_2 ()
+ {
+ long x = 24534553245L;
+ return (int)(x % 2L);
+ }
+
+ public static int test_1_lrem_imm_2_neg ()
+ {
+ long x = -24534553245L;
+ return -(int)(x % 2L);
+ }
+
+ public static int test_13_lrem_imm_32 ()
+ {
+ long x = 17389L;
+ return (int)(x % 32L);
+ }
+
+ public static int test_27_lrem_imm_32_neg ()
+ {
+ long x = -2435323L;
+ return -(int)(x % 32L);
+ }
+
+ public static int test_5_lrem_imm_large ()
+ {
+ long x = 0x1000000005L;
+ return (int)(x % 0x40000000L);
+ }
+
+ public static int test_5_lrem_imm_too_large ()
+ {
+ long x = 0x1000000005L;
+ return (int)(x % 0x80000000L);
+ }
}