* the IL code looks.
*/
+#if MOBILE
+namespace ObjectTests
+{
+#endif
+
struct Simple {
public int a;
public byte b;
class Tests {
- 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_0_return () {
Simple s;
}
public static int test_0_cond_branch_side_effects () {
counter = 5;
- if (WriteStuff());
+ if (WriteStuff()) {
+ }
if (counter == 10)
return 0;
return 1;
return regress_679467_inner ();
}
*/
+
+ static int test_0_char_ctor () {
+ string s = new String (new char[] { 'A', 'B' }, 0, 1);
+ return 0;
+ }
+
+ static object mInstance = null;
+
+ [MethodImpl(MethodImplOptions.Synchronized)]
+ public static object getInstance() {
+ if (mInstance == null)
+ mInstance = new object();
+ return mInstance;
+ }
+
+ static int test_0_synchronized () {
+ getInstance ();
+ return 0;
+ }
+
+ struct BStruct {
+ public Type t;
+ }
+
+ class Del<T> {
+ public static BStruct foo () {
+ return new BStruct () { t = typeof (T) };
+ }
+ }
+
+ delegate BStruct ADelegate ();
+
+ static int test_0_regress_10601 () {
+ var act = (ADelegate)(Del<string>.foo);
+ BStruct b = act ();
+ if (b.t != typeof (string))
+ return 1;
+ return 0;
+ }
+
+ static int test_0_regress_11058 () {
+ int foo = -252674008;
+ int foo2 = (int)(foo ^ 0xF0F0F0F0); // = 28888
+ var arr = new byte[foo2].Length;
+ return 0;
+ }
+
+ public static void do_throw () {
+ throw new Exception ();
+ }
+
+ [MethodImplAttribute (MethodImplOptions.NoInlining)]
+ static void empty () {
+ }
+
+ // #11297
+ public static int test_0_llvm_inline_throw () {
+ try {
+ empty ();
+ } catch (Exception) {
+ do_throw ();
+ }
+
+ return 0;
+ }
+
+ enum ByteEnum : byte {
+ Zero = 0
+ }
+
+ struct BugStruct {
+ public ByteEnum f1;
+ public ByteEnum f2;
+ public ByteEnum f3;
+ public byte f4;
+ public byte f5;
+ public byte f6;
+ public byte f7;
+ }
+
+ public static int test_0_14217 () {
+ t_14217_inner (new BugStruct ());
+ return 0;
+ }
+
+ [MethodImplAttribute (MethodImplOptions.NoInlining)]
+ static void t_14217_inner (BugStruct bug) {
+ }
+
+ [StructLayout(LayoutKind.Sequential)]
+ public struct EmptyStruct {
+ }
+
+ class EmptyClass {
+ public static EmptyStruct s;
+ }
+
+ // #20349
+ static int test_0_empty_struct_as_static () {
+ var s = EmptyClass.s;
+ return 0;
+ }
+
+ // #25487
+ static int test_0_int_to_r4 () {
+ return int_to_r4_inner (255);
+ }
+
+ static int int_to_r4_inner (int value1) {
+ int sub = -value1;
+ float mult = sub * 1f;
+ if (mult != -255.0f)
+ return 1;
+ else
+ return 0;
+ }
+
+ struct HFA4D {
+ public double a, b, c, d;
+ }
+
+ static double arm64_hfa_on_stack_inner (double d1, double d2, double d3, double d4, double d5, double d6, double d7, double d8, HFA4D s) {
+ return s.a + s.b + s.c + s.d;
+ }
+
+ static int test_0_arm64_hfa_on_stack () {
+ var s = new HFA4D () { a = 1.0, b = 2.0, c = 3.0, d = 4.0 };
+ var res = arm64_hfa_on_stack_inner (1, 2, 3, 4, 5, 6, 7, 8, s);
+ return res == 10.0 ? 0 : 1;
+ }
}
+#if MOBILE
+}
+#endif