mirror of https://github.com/icsharpcode/ILSpy.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
190 lines
6.7 KiB
190 lines
6.7 KiB
abstract class QuickSortProgram |
|
{ |
|
public static void Main(System.String[] args) |
|
{ |
|
IL_00: // No-op |
|
IL_01: System.String[] expr01 = args; |
|
IL_02: int expr02 = arg1.Length; |
|
IL_03: int expr03 = (Int32)arg1; |
|
IL_04: object expr04 = new int[arg1]; |
|
IL_09: V_0 = arg1; |
|
IL_0A: short expr0A = 0; |
|
IL_0B: V_1 = arg1; |
|
IL_0C: goto IL_1F; |
|
IL_0E: // No-op |
|
IL_0F: System.Int32[] expr0F = V_0; |
|
IL_10: int expr10 = V_1; |
|
IL_11: System.String[] expr11 = args; |
|
IL_12: int expr12 = V_1; |
|
IL_13: object expr13 = arg1[arg2]; |
|
IL_14: int expr14 = System.Int32.Parse(arg0); |
|
IL_19: arg1[arg2] = arg3; |
|
IL_1A: // No-op |
|
IL_1B: int expr1B = V_1; |
|
IL_1C: short expr1C = 1; |
|
IL_1D: int expr1D = arg1 + arg2; |
|
IL_1E: V_1 = arg1; |
|
IL_1F: int expr1F = V_1; |
|
IL_20: System.Int32[] expr20 = V_0; |
|
IL_21: int expr21 = arg1.Length; |
|
IL_22: int expr22 = (Int32)arg1; |
|
IL_23: bool expr23 = arg1 < arg2; |
|
IL_25: V_2 = arg1; |
|
IL_26: bool expr26 = V_2; |
|
IL_27: if (arg1) goto IL_0E; |
|
IL_29: System.Int32[] expr29 = V_0; |
|
IL_2A: short expr2A = 0; |
|
IL_2B: System.Int32[] expr2B = V_0; |
|
IL_2C: int expr2C = arg1.Length; |
|
IL_2D: int expr2D = (Int32)arg1; |
|
IL_2E: short expr2E = 1; |
|
IL_2F: int expr2F = arg1 - arg2; |
|
IL_30: QuickSortProgram.QuickSort(arg0, arg1, arg2); |
|
IL_35: // No-op |
|
IL_36: short expr36 = 0; |
|
IL_37: V_1 = arg1; |
|
IL_38: goto IL_5C; |
|
IL_3A: // No-op |
|
IL_3B: System.Int32[] expr3B = V_0; |
|
IL_3C: int expr3C = V_1; |
|
IL_3D: object expr3D = arg1[arg2]; |
|
IL_42: string expr42 = arg1.ToString(); |
|
IL_47: string expr47 = " "; |
|
IL_4C: string expr4C = System.String.Concat(arg0, arg1); |
|
IL_51: System.Console.Write(arg0); |
|
IL_56: // No-op |
|
IL_57: // No-op |
|
IL_58: int expr58 = V_1; |
|
IL_59: short expr59 = 1; |
|
IL_5A: int expr5A = arg1 + arg2; |
|
IL_5B: V_1 = arg1; |
|
IL_5C: int expr5C = V_1; |
|
IL_5D: System.Int32[] expr5D = V_0; |
|
IL_5E: int expr5E = arg1.Length; |
|
IL_5F: int expr5F = (Int32)arg1; |
|
IL_60: bool expr60 = arg1 < arg2; |
|
IL_62: V_2 = arg1; |
|
IL_63: bool expr63 = V_2; |
|
IL_64: if (arg1) goto IL_3A; |
|
IL_66: return; |
|
} |
|
public static void QuickSort(System.Int32[] array, int left, int right) |
|
{ |
|
IL_00: // No-op |
|
IL_01: int expr01 = right; |
|
IL_02: int expr02 = left; |
|
IL_03: bool expr03 = arg1 > arg2; |
|
IL_05: short expr05 = 0; |
|
IL_06: bool expr06 = arg1 == arg2; |
|
IL_08: V_2 = arg1; |
|
IL_09: bool expr09 = V_2; |
|
IL_0A: if (arg1) goto IL_34; |
|
IL_0C: // No-op |
|
IL_0D: int expr0D = left; |
|
IL_0E: int expr0E = right; |
|
IL_0F: int expr0F = arg1 + arg2; |
|
IL_10: short expr10 = 2; |
|
IL_11: int expr11 = arg1 / arg2; |
|
IL_12: V_0 = arg1; |
|
IL_13: System.Int32[] expr13 = array; |
|
IL_14: int expr14 = left; |
|
IL_15: int expr15 = right; |
|
IL_16: int expr16 = V_0; |
|
IL_17: int expr17 = QuickSortProgram.Partition(arg0, arg1, arg2, arg3); |
|
IL_1C: V_1 = arg1; |
|
IL_1D: System.Int32[] expr1D = array; |
|
IL_1E: int expr1E = left; |
|
IL_1F: int expr1F = V_1; |
|
IL_20: short expr20 = 1; |
|
IL_21: int expr21 = arg1 - arg2; |
|
IL_22: QuickSortProgram.QuickSort(arg0, arg1, arg2); |
|
IL_27: // No-op |
|
IL_28: System.Int32[] expr28 = array; |
|
IL_29: int expr29 = V_1; |
|
IL_2A: short expr2A = 1; |
|
IL_2B: int expr2B = arg1 + arg2; |
|
IL_2C: int expr2C = right; |
|
IL_2D: QuickSortProgram.QuickSort(arg0, arg1, arg2); |
|
IL_32: // No-op |
|
IL_33: // No-op |
|
IL_34: return; |
|
} |
|
private static int Partition(System.Int32[] array, int left, int right, int pivotIndex) |
|
{ |
|
IL_00: // No-op |
|
IL_01: System.Int32[] expr01 = array; |
|
IL_02: int expr02 = pivotIndex; |
|
IL_03: int expr03 = arg1[arg2]; |
|
IL_04: V_0 = arg1; |
|
IL_05: System.Int32[] expr05 = array; |
|
IL_06: int expr06 = pivotIndex; |
|
IL_07: int expr07 = right; |
|
IL_08: QuickSortProgram.Swap(arg0, arg1, arg2); |
|
IL_0D: // No-op |
|
IL_0E: int expr0E = left; |
|
IL_0F: V_1 = arg1; |
|
IL_10: int expr10 = left; |
|
IL_11: V_2 = arg1; |
|
IL_12: goto IL_35; |
|
IL_14: // No-op |
|
IL_15: System.Int32[] expr15 = array; |
|
IL_16: int expr16 = V_2; |
|
IL_17: int expr17 = arg1[arg2]; |
|
IL_18: int expr18 = V_0; |
|
IL_19: bool expr19 = arg1 > arg2; |
|
IL_1B: V_4 = arg1; |
|
IL_1D: bool expr1D = V_4; |
|
IL_1F: if (arg1) goto IL_30; |
|
IL_21: // No-op |
|
IL_22: System.Int32[] expr22 = array; |
|
IL_23: int expr23 = V_1; |
|
IL_24: int expr24 = V_2; |
|
IL_25: QuickSortProgram.Swap(arg0, arg1, arg2); |
|
IL_2A: // No-op |
|
IL_2B: int expr2B = V_1; |
|
IL_2C: short expr2C = 1; |
|
IL_2D: int expr2D = arg1 + arg2; |
|
IL_2E: V_1 = arg1; |
|
IL_2F: // No-op |
|
IL_30: // No-op |
|
IL_31: int expr31 = V_2; |
|
IL_32: short expr32 = 1; |
|
IL_33: int expr33 = arg1 + arg2; |
|
IL_34: V_2 = arg1; |
|
IL_35: int expr35 = V_2; |
|
IL_36: int expr36 = right; |
|
IL_37: bool expr37 = arg1 < arg2; |
|
IL_39: V_4 = arg1; |
|
IL_3B: bool expr3B = V_4; |
|
IL_3D: if (arg1) goto IL_14; |
|
IL_3F: System.Int32[] expr3F = array; |
|
IL_40: int expr40 = right; |
|
IL_41: int expr41 = V_1; |
|
IL_42: QuickSortProgram.Swap(arg0, arg1, arg2); |
|
IL_47: // No-op |
|
IL_48: int expr48 = V_1; |
|
IL_49: V_3 = arg1; |
|
IL_4A: goto IL_4C; |
|
IL_4C: int expr4C = V_3; |
|
IL_4D: return arg1; |
|
} |
|
private static void Swap(System.Int32[] array, int index1, int index2) |
|
{ |
|
IL_00: // No-op |
|
IL_01: System.Int32[] expr01 = array; |
|
IL_02: int expr02 = index1; |
|
IL_03: int expr03 = arg1[arg2]; |
|
IL_04: V_0 = arg1; |
|
IL_05: System.Int32[] expr05 = array; |
|
IL_06: int expr06 = index1; |
|
IL_07: System.Int32[] expr07 = array; |
|
IL_08: int expr08 = index2; |
|
IL_09: int expr09 = arg1[arg2]; |
|
IL_0A: arg1[arg2] = arg3; |
|
IL_0B: System.Int32[] expr0B = array; |
|
IL_0C: int expr0C = index2; |
|
IL_0D: int expr0D = V_0; |
|
IL_0E: arg1[arg2] = arg3; |
|
IL_0F: return; |
|
} |
|
}
|
|
|