예제 #1
0
        public static void Test1()
        {
            Console.WriteLine("Enter Test1");
            LargeStruct s = new LargeStruct();

            s.i2 = 5;
            TestWrite(1, 2, 3, 4, s); // 4 int reg args, then struct stack arg
        }
예제 #2
0
        public static void EatStackThenTest1(int level = 0)
        {
            LargeStruct s = new LargeStruct();

            s.i2 = level;
            Escape(ref s);

            if (level < 10)
            {
                EatStackThenTest1(level + 1);
            }
            else
            {
                Test1();
            }
        }
예제 #3
0
 public static void Escape(ref LargeStruct s)
 {
 }
예제 #4
0
 public static void TestWrite(int i1, int i2, int i3, int i4, LargeStruct s)
 {
     Console.Write("Enter TestWrite: ");
     Console.WriteLine(i1 + i2 + i3 + i4 + s.i2);
     iret = 100;
 }