/// <summary> /// Decision to fast tail call. See DoubleCountRetBuffCaller for more /// information. /// </summary> public static StructSizeThirtyTwo DoubleCountRetBuffCallerWrapper(int a, int b) { if (a % 2 == 0) { StructSizeEightIntNotExplicit eightBytes = new StructSizeEightIntNotExplicit(a, a); a = 1; b = b + 2; return(DoubleCountRetBuffCallee(eightBytes, eightBytes, eightBytes, eightBytes, eightBytes)); } else { StructSizeEightIntNotExplicit eightBytes = new StructSizeEightIntNotExplicit(b, b); a = 4; b = b + 1; return(DoubleCountRetBuffCallee(eightBytes, eightBytes, eightBytes, eightBytes, eightBytes)); } }
/// <summary> /// Decision to fast tail call. See DoubleCountRetBuffCaller for more /// information. /// </summary> public static StructSizeThirtyTwo DoubleCountRetBuffCallee(StructSizeEightIntNotExplicit sstf, StructSizeEightIntNotExplicit sstf2, StructSizeEightIntNotExplicit sstf3, StructSizeEightIntNotExplicit sstf4, StructSizeEightIntNotExplicit sstf5) { int a = sstf.a; int b = sstf.b; StructSizeThirtyTwo retVal = new StructSizeThirtyTwo(b, a, a, b); int count = 0; for (int i = 0; i < b; ++i) { if (i % 2 == 0) { ++count; } } return(retVal); }