-------------------- <GaussianElimination: void <clinit>()> (live-var) --------------------
[0@L1] temp$0 = 1.0E-8; [temp$0]
[1@L2] <GaussianElimination: double EPSILON> = temp$0; []
[2@L2] return; []

-------------------- <GaussianElimination: void <init>(double[][],double[])> (live-var) --------------------
[0@L8] invokespecial %this.<java.lang.Object: void <init>()>(); [%this, A, b]
[1@L9] temp$0 = A.length; [%this, A, b, temp$0]
[2@L9] %this.<GaussianElimination: int m> = temp$0; [%this, A, b]
[3@L10] temp$2 = 0; [%this, A, b, temp$2]
[4@L10] temp$3 = A[temp$2]; [%this, A, b, temp$3]
[5@L10] temp$4 = temp$3.length; [%this, A, b, temp$4]
[6@L10] %this.<GaussianElimination: int n> = temp$4; [%this, A, b]
[7@L12] temp$5 = b.length; [%this, A, b, temp$5]
[8@L12] temp$6 = %this.<GaussianElimination: int m>; [%this, A, b, temp$5, temp$6]
[9@L12] if (temp$5 != temp$6) goto 11; [%this, A, b]
[10@L12] goto 16; [%this, A, b]
[11@L12] nop; []
[12@L13] temp$7 = new java.lang.IllegalArgumentException; [temp$7]
[13@L13] %stringconst0 = "Dimensions disagree"; [%stringconst0, temp$7]
[14@L13] invokespecial temp$7.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(%stringconst0); [temp$7]
[15@L13] throw temp$7; []
[16@L13] nop; [%this, A, b]
[17@L15] temp$8 = %this.<GaussianElimination: int m>; [%this, A, b, temp$8]
[18@L15] temp$9 = %this.<GaussianElimination: int n>; [%this, A, b, temp$8, temp$9]
[19@L15] %intconst1 = 1; [%intconst1, %this, A, b, temp$8, temp$9]
[20@L15] temp$10 = temp$9 + %intconst1; [%intconst1, %this, A, b, temp$10, temp$8]
[21@L15] temp$11 = newmultiarray double[temp$8][temp$10]; [%intconst1, %this, A, b, temp$11]
[22@L15] %this.<GaussianElimination: double[][] a> = temp$11; [%intconst1, %this, A, b]
[23@L16] i = 0; [%intconst1, %this, A, b, i]
[24@L16] nop; [%intconst1, %this, A, b, i]
[25@L16] temp$12 = %this.<GaussianElimination: int m>; [%intconst1, %this, A, b, i, temp$12]
[26@L16] if (i < temp$12) goto 28; [%intconst1, %this, A, b, i]
[27@L16] goto 47; [%intconst1, %this, b]
[28@L16] nop; [%intconst1, %this, A, b, i]
[29@L17] j = 0; [%intconst1, %this, A, b, i, j]
[30@L17] nop; [%intconst1, %this, A, b, i, j]
[31@L17] temp$13 = %this.<GaussianElimination: int n>; [%intconst1, %this, A, b, i, j, temp$13]
[32@L17] if (j < temp$13) goto 34; [%intconst1, %this, A, b, i, j]
[33@L17] goto 43; [%intconst1, %this, A, b, i]
[34@L17] nop; [%intconst1, %this, A, b, i, j]
[35@L18] temp$14 = %this.<GaussianElimination: double[][] a>; [%intconst1, %this, A, b, i, j, temp$14]
[36@L18] temp$16 = temp$14[i]; [%intconst1, %this, A, b, i, j, temp$16]
[37@L18] temp$20 = A[i]; [%intconst1, %this, A, b, i, j, temp$16, temp$20]
[38@L18] temp$22 = temp$20[j]; [%intconst1, %this, A, b, i, j, temp$16, temp$22]
[39@L18] temp$16[j] = temp$22; [%intconst1, %this, A, b, i, j]
[40@L18] nop; [%intconst1, %this, A, b, i, j]
[41@L17] j = j + %intconst1; [%intconst1, %this, A, b, i, j]
[42@L17] goto 30; [%intconst1, %this, A, b, i, j]
[43@L17] nop; [%intconst1, %this, A, b, i]
[44@L17] nop; [%intconst1, %this, A, b, i]
[45@L16] i = i + %intconst1; [%intconst1, %this, A, b, i]
[46@L16] goto 24; [%intconst1, %this, A, b, i]
[47@L16] nop; [%intconst1, %this, b]
[48@L19] i = 0; [%intconst1, %this, b, i]
[49@L19] nop; [%intconst1, %this, b, i]
[50@L19] temp$27 = %this.<GaussianElimination: int m>; [%intconst1, %this, b, i, temp$27]
[51@L19] if (i < temp$27) goto 53; [%intconst1, %this, b, i]
[52@L19] goto 62; [%this]
[53@L19] nop; [%intconst1, %this, b, i]
[54@L20] temp$28 = %this.<GaussianElimination: double[][] a>; [%intconst1, %this, b, i, temp$28]
[55@L20] temp$30 = temp$28[i]; [%intconst1, %this, b, i, temp$30]
[56@L20] temp$31 = %this.<GaussianElimination: int n>; [%intconst1, %this, b, i, temp$30, temp$31]
[57@L20] temp$34 = b[i]; [%intconst1, %this, b, i, temp$30, temp$31, temp$34]
[58@L20] temp$30[temp$31] = temp$34; [%intconst1, %this, b, i]
[59@L20] nop; [%intconst1, %this, b, i]
[60@L19] i = i + %intconst1; [%intconst1, %this, b, i]
[61@L19] goto 49; [%intconst1, %this, b, i]
[62@L19] nop; [%this]
[63@L22] invokevirtual %this.<GaussianElimination: void forwardElimination()>(); []
[64@L22] return; []

-------------------- <GaussianElimination: void forwardElimination()> (live-var) --------------------
[0@L27] p = 0; [%intconst1, %this, p]
[1@L27] nop; [%intconst1, %this, p]
[2@L27] temp$0 = %this.<GaussianElimination: int m>; [%intconst1, %this, p, temp$0]
[3@L27] temp$1 = %this.<GaussianElimination: int n>; [%intconst1, %this, p, temp$0, temp$1]
[4@L27] temp$2 = invokestatic <java.lang.Math: int min(int,int)>(temp$0, temp$1); [%intconst1, %this, p, temp$2]
[5@L27] if (p < temp$2) goto 7; [%intconst1, %this, p]
[6@L27] goto 51; []
[7@L27] nop; [%intconst1, %this, p]
[8@L28] max = p; [%intconst1, %this, max, p]
[9@L29] %intconst0 = 1; [%intconst0, %intconst1, %this, max, p]
[10@L29] i = p + %intconst0; [%intconst0, %intconst1, %this, i, max, p]
[11@L29] nop; [%intconst0, %intconst1, %this, i, max, p]
[12@L29] temp$4 = %this.<GaussianElimination: int m>; [%intconst0, %intconst1, %this, i, max, p, temp$4]
[13@L29] if (i < temp$4) goto 15; [%intconst0, %intconst1, %this, i, max, p]
[14@L29] goto 34; [%intconst0, %intconst1, %this, max, p]
[15@L29] nop; [%intconst0, %this, i, max, p]
[16@L30] temp$5 = %this.<GaussianElimination: double[][] a>; [%intconst0, %this, i, max, p, temp$5]
[17@L30] temp$7 = temp$5[i]; [%intconst0, %this, i, max, p, temp$7]
[18@L30] temp$9 = temp$7[p]; [%intconst0, %this, i, max, p, temp$9]
[19@L30] temp$10 = invokestatic <java.lang.Math: double abs(double)>(temp$9); [%intconst0, %this, i, max, p, temp$10]
[20@L30] temp$11 = %this.<GaussianElimination: double[][] a>; [%intconst0, %this, i, max, p, temp$10, temp$11]
[21@L30] temp$13 = temp$11[max]; [%intconst0, %this, i, max, p, temp$10, temp$13]
[22@L30] temp$15 = temp$13[p]; [%intconst0, %this, i, max, p, temp$10, temp$15]
[23@L30] temp$16 = invokestatic <java.lang.Math: double abs(double)>(temp$15); [%intconst0, %this, i, max, p, temp$10, temp$16]
[24@L30] temp$17 = temp$10 cmpl temp$16; [%intconst0, %this, i, max, p, temp$17]
[25@L30] %intconst1 = 0; [%intconst0, %intconst1, %this, i, max, p, temp$17]
[26@L30] if (temp$17 <= %intconst1) goto 30; [%intconst0, %intconst1, %this, i, max, p]
[27@L30] goto 28; [%intconst0, %intconst1, %this, i, p]
[28@L30] nop; [%intconst0, %intconst1, %this, i, p]
[29@L31] max = i; [%intconst0, %intconst1, %this, i, max, p]
[30@L31] nop; [%intconst0, %intconst1, %this, i, max, p]
[31@L31] nop; [%intconst0, %intconst1, %this, i, max, p]
[32@L29] i = i + %intconst0; [%intconst0, %intconst1, %this, i, max, p]
[33@L29] goto 11; [%intconst0, %intconst1, %this, i, max, p]
[34@L29] nop; [%intconst0, %intconst1, %this, max, p]
[35@L34] invokevirtual %this.<GaussianElimination: void swap(int,int)>(p, max); [%intconst0, %intconst1, %this, p]
[36@L35] temp$20 = %this.<GaussianElimination: double[][] a>; [%intconst0, %intconst1, %this, p, temp$20]
[37@L35] temp$22 = temp$20[p]; [%intconst0, %intconst1, %this, p, temp$22]
[38@L35] temp$24 = temp$22[p]; [%intconst0, %intconst1, %this, p, temp$24]
[39@L35] temp$25 = invokestatic <java.lang.Math: double abs(double)>(temp$24); [%intconst0, %intconst1, %this, p, temp$25]
[40@L35] %doubleconst2 = 1.0E-8; [%doubleconst2, %intconst0, %intconst1, %this, p, temp$25]
[41@L35] temp$26 = temp$25 cmpg %doubleconst2; [%intconst0, %intconst1, %this, p, temp$26]
[42@L35] if (temp$26 > %intconst1) goto 46; [%intconst0, %intconst1, %this, p]
[43@L35] goto 44; [%intconst0, %intconst1, %this, p]
[44@L35] nop; [%intconst0, %intconst1, %this, p]
[45@L36] goto 48; [%intconst0, %intconst1, %this, p]
[46@L36] nop; [%intconst0, %intconst1, %this, p]
[47@L38] invokevirtual %this.<GaussianElimination: void pivot(int)>(p); [%intconst0, %intconst1, %this, p]
[48@L38] nop; [%intconst0, %intconst1, %this, p]
[49@L27] p = p + %intconst0; [%intconst1, %this, p]
[50@L27] goto 1; [%intconst1, %this, p]
[51@L27] nop; []
[52@L27] return; []

-------------------- <GaussianElimination: void swap(int,int)> (live-var) --------------------
[0@L43] temp$0 = %this.<GaussianElimination: double[][] a>; [%this, row1, row2, temp$0]
[1@L43] temp = temp$0[row1]; [%this, row1, row2, temp]
[2@L44] temp$2 = %this.<GaussianElimination: double[][] a>; [%this, row1, row2, temp, temp$2]
[3@L44] temp$4 = %this.<GaussianElimination: double[][] a>; [%this, row1, row2, temp, temp$2, temp$4]
[4@L44] temp$6 = temp$4[row2]; [%this, row1, row2, temp, temp$2, temp$6]
[5@L44] temp$2[row1] = temp$6; [%this, row2, temp]
[6@L45] temp$7 = %this.<GaussianElimination: double[][] a>; [row2, temp, temp$7]
[7@L45] temp$7[row2] = temp; []
[8@L45] return; []

-------------------- <GaussianElimination: void pivot(int)> (live-var) --------------------
[0@L49] %intconst0 = 1; [%intconst0, %this, p]
[1@L49] i = p + %intconst0; [%intconst0, %this, i, p]
[2@L49] nop; [%intconst0, %this, i, p]
[3@L49] temp$1 = %this.<GaussianElimination: int m>; [%intconst0, %this, i, p, temp$1]
[4@L49] if (i < temp$1) goto 6; [%intconst0, %this, i, p]
[5@L49] goto 37; []
[6@L49] nop; [%intconst0, %this, i, p]
[7@L50] temp$2 = %this.<GaussianElimination: double[][] a>; [%intconst0, %this, i, p, temp$2]
[8@L50] temp$4 = temp$2[i]; [%intconst0, %this, i, p, temp$4]
[9@L50] temp$6 = %this.<GaussianElimination: double[][] a>; [%intconst0, %this, i, p, temp$4, temp$6]
[10@L50] temp$8 = temp$6[p]; [%intconst0, %this, i, p, temp$4, temp$8]
[11@L50] temp$10 = temp$4[p]; [%intconst0, %this, i, p, temp$10, temp$8]
[12@L50] temp$11 = temp$8[p]; [%intconst0, %this, i, p, temp$10, temp$11]
[13@L50] alpha = temp$10 / temp$11; [%intconst0, %this, alpha, i, p]
[14@L51] j = p; [%intconst0, %this, alpha, i, j, p]
[15@L51] nop; [%intconst0, %this, alpha, i, j, p]
[16@L51] temp$13 = %this.<GaussianElimination: int n>; [%intconst0, %this, alpha, i, j, p, temp$13]
[17@L51] if (j <= temp$13) goto 19; [%intconst0, %this, alpha, i, j, p]
[18@L51] goto 33; [%intconst0, %this, i, p]
[19@L51] nop; [%intconst0, %this, alpha, i, j, p]
[20@L52] temp$14 = %this.<GaussianElimination: double[][] a>; [%intconst0, %this, alpha, i, j, p, temp$14]
[21@L52] temp$16 = temp$14[i]; [%intconst0, %this, alpha, i, j, p, temp$16]
[22@L52] temp$17 = j; [%intconst0, %this, alpha, i, j, p, temp$16, temp$17]
[23@L52] temp$18 = temp$16[temp$17]; [%intconst0, %this, alpha, i, j, p, temp$16, temp$17, temp$18]
[24@L52] temp$19 = %this.<GaussianElimination: double[][] a>; [%intconst0, %this, alpha, i, j, p, temp$16, temp$17, temp$18, temp$19]
[25@L52] temp$21 = temp$19[p]; [%intconst0, %this, alpha, i, j, p, temp$16, temp$17, temp$18, temp$21]
[26@L52] temp$23 = temp$21[j]; [%intconst0, %this, alpha, i, j, p, temp$16, temp$17, temp$18, temp$23]
[27@L52] temp$24 = alpha * temp$23; [%intconst0, %this, alpha, i, j, p, temp$16, temp$17, temp$18, temp$24]
[28@L52] temp$25 = temp$18 - temp$24; [%intconst0, %this, alpha, i, j, p, temp$16, temp$17, temp$25]
[29@L52] temp$16[temp$17] = temp$25; [%intconst0, %this, alpha, i, j, p]
[30@L52] nop; [%intconst0, %this, alpha, i, j, p]
[31@L51] j = j + %intconst0; [%intconst0, %this, alpha, i, j, p]
[32@L51] goto 15; [%intconst0, %this, alpha, i, j, p]
[33@L51] nop; [%intconst0, %this, i, p]
[34@L51] nop; [%intconst0, %this, i, p]
[35@L49] i = i + %intconst0; [%intconst0, %this, i, p]
[36@L49] goto 2; [%intconst0, %this, i, p]
[37@L49] nop; []
[38@L49] return; []

-------------------- <GaussianElimination: double[] primal()> (live-var) --------------------
[0@L58] temp$0 = %this.<GaussianElimination: int n>; [%doubleconst2, %this, temp$0]
[1@L58] x = newarray double[temp$0]; [%doubleconst2, %this, x]
[2@L59] temp$1 = %this.<GaussianElimination: int n>; [%doubleconst2, %this, temp$1, x]
[3@L59] temp$3 = %this.<GaussianElimination: int m>; [%doubleconst2, %this, temp$1, temp$3, x]
[4@L59] %intconst0 = 1; [%doubleconst2, %intconst0, %this, temp$1, temp$3, x]
[5@L59] temp$2 = temp$1 - %intconst0; [%doubleconst2, %intconst0, %this, temp$2, temp$3, x]
[6@L59] temp$4 = temp$3 - %intconst0; [%doubleconst2, %intconst0, %this, temp$2, temp$4, x]
[7@L59] temp$5 = invokestatic <java.lang.Math: int min(int,int)>(temp$2, temp$4); [%doubleconst2, %intconst0, %this, temp$5, x]
[8@L59] i = temp$5; [%doubleconst2, %intconst0, %this, i, x]
[9@L59] nop; [%doubleconst2, %intconst0, %this, i, x]
[10@L59] %intconst1 = 0; [%doubleconst2, %intconst0, %intconst1, %this, i, x]
[11@L59] if (i >= %intconst1) goto 13; [%doubleconst2, %intconst0, %intconst1, %this, i, x]
[12@L59] goto 70; [%doubleconst2, %intconst0, %intconst1, %this, x]
[13@L59] nop; [%intconst0, %intconst1, %this, i, x]
[14@L60] sum = 0.0; [%intconst0, %intconst1, %this, i, sum, x]
[15@L61] j = i + %intconst0; [%intconst0, %intconst1, %this, i, j, sum, x]
[16@L61] nop; [%intconst0, %intconst1, %this, i, j, sum, x]
[17@L61] temp$7 = %this.<GaussianElimination: int n>; [%intconst0, %intconst1, %this, i, j, sum, temp$7, x]
[18@L61] if (j < temp$7) goto 20; [%intconst0, %intconst1, %this, i, j, sum, x]
[19@L61] goto 30; [%intconst0, %intconst1, %this, i, sum, x]
[20@L61] nop; [%intconst0, %intconst1, %this, i, j, sum, x]
[21@L62] temp$9 = %this.<GaussianElimination: double[][] a>; [%intconst0, %intconst1, %this, i, j, sum, temp$9, x]
[22@L62] temp$11 = temp$9[i]; [%intconst0, %intconst1, %this, i, j, sum, temp$11, x]
[23@L62] temp$15 = temp$11[j]; [%intconst0, %intconst1, %this, i, j, sum, temp$15, x]
[24@L62] temp$16 = x[j]; [%intconst0, %intconst1, %this, i, j, sum, temp$15, temp$16, x]
[25@L62] temp$17 = temp$15 * temp$16; [%intconst0, %intconst1, %this, i, j, sum, temp$17, x]
[26@L62] sum = sum + temp$17; [%intconst0, %intconst1, %this, i, j, sum, x]
[27@L62] nop; [%intconst0, %intconst1, %this, i, j, sum, x]
[28@L61] j = j + %intconst0; [%intconst0, %intconst1, %this, i, j, sum, x]
[29@L61] goto 16; [%intconst0, %intconst1, %this, i, j, sum, x]
[30@L61] nop; [%intconst0, %intconst1, %this, i, sum, x]
[31@L65] temp$21 = %this.<GaussianElimination: double[][] a>; [%intconst0, %intconst1, %this, i, sum, temp$21, x]
[32@L65] temp$23 = temp$21[i]; [%intconst0, %intconst1, %this, i, sum, temp$23, x]
[33@L65] temp$25 = temp$23[i]; [%intconst0, %intconst1, %this, i, sum, temp$25, x]
[34@L65] temp$26 = invokestatic <java.lang.Math: double abs(double)>(temp$25); [%intconst0, %intconst1, %this, i, sum, temp$26, x]
[35@L65] %doubleconst2 = 1.0E-8; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, temp$26, x]
[36@L65] temp$27 = temp$26 cmpl %doubleconst2; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, temp$27, x]
[37@L65] if (temp$27 <= %intconst1) goto 51; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, x]
[38@L65] goto 39; [%doubleconst2, %intconst0, %this, i, sum, x]
[39@L65] nop; [%doubleconst2, %intconst0, %this, i, sum, x]
[40@L66] temp$30 = %this.<GaussianElimination: double[][] a>; [%doubleconst2, %intconst0, %this, i, sum, temp$30, x]
[41@L66] temp$32 = temp$30[i]; [%doubleconst2, %intconst0, %this, i, sum, temp$32, x]
[42@L66] temp$33 = %this.<GaussianElimination: int n>; [%doubleconst2, %intconst0, %this, i, sum, temp$32, temp$33, x]
[43@L66] temp$34 = temp$32[temp$33]; [%doubleconst2, %intconst0, %this, i, sum, temp$34, x]
[44@L66] temp$36 = %this.<GaussianElimination: double[][] a>; [%doubleconst2, %intconst0, %this, i, sum, temp$34, temp$36, x]
[45@L66] temp$38 = temp$36[i]; [%doubleconst2, %intconst0, %this, i, sum, temp$34, temp$38, x]
[46@L66] temp$40 = temp$38[i]; [%doubleconst2, %intconst0, %this, i, sum, temp$34, temp$40, x]
[47@L66] temp$35 = temp$34 - sum; [%doubleconst2, %intconst0, %this, i, temp$35, temp$40, x]
[48@L66] temp$41 = temp$35 / temp$40; [%doubleconst2, %intconst0, %this, i, temp$41, x]
[49@L66] x[i] = temp$41; [%doubleconst2, %intconst0, %this, i, x]
[50@L65] goto 65; [%doubleconst2, %intconst0, %this, i, x]
[51@L65] nop; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, x]
[52@L67] temp$42 = %this.<GaussianElimination: double[][] a>; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, temp$42, x]
[53@L67] temp$44 = temp$42[i]; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, temp$44, x]
[54@L67] temp$45 = %this.<GaussianElimination: int n>; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, temp$44, temp$45, x]
[55@L67] temp$46 = temp$44[temp$45]; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, temp$46, x]
[56@L67] temp$47 = temp$46 - sum; [%doubleconst2, %intconst0, %intconst1, %this, i, temp$47, x]
[57@L67] temp$48 = invokestatic <java.lang.Math: double abs(double)>(temp$47); [%doubleconst2, %intconst0, %intconst1, %this, i, temp$48, x]
[58@L67] temp$49 = temp$48 cmpl %doubleconst2; [%doubleconst2, %intconst0, %intconst1, %this, i, temp$49, x]
[59@L67] if (temp$49 <= %intconst1) goto 64; [%doubleconst2, %intconst0, %this, i, x]
[60@L67] goto 61; []
[61@L67] nop; []
[62@L67] temp$50 = null; [temp$50]
[63@L68] return temp$50; []
[64@L68] nop; [%doubleconst2, %intconst0, %this, i, x]
[65@L68] nop; [%doubleconst2, %intconst0, %this, i, x]
[66@L68] nop; [%doubleconst2, %intconst0, %this, i, x]
[67@L59] %intconst3 = -1; [%doubleconst2, %intconst0, %intconst3, %this, i, x]
[68@L59] i = i + %intconst3; [%doubleconst2, %intconst0, %this, i, x]
[69@L59] goto 9; [%doubleconst2, %intconst0, %this, i, x]
[70@L59] nop; [%doubleconst2, %intconst0, %intconst1, %this, x]
[71@L71] i = %this.<GaussianElimination: int n>; [%doubleconst2, %intconst0, %intconst1, %this, i, x]
[72@L71] nop; [%doubleconst2, %intconst0, %intconst1, %this, i, x]
[73@L71] temp$53 = %this.<GaussianElimination: int m>; [%doubleconst2, %intconst0, %intconst1, %this, i, temp$53, x]
[74@L71] if (i < temp$53) goto 76; [%doubleconst2, %intconst0, %intconst1, %this, i, x]
[75@L71] goto 110; [x]
[76@L71] nop; [%doubleconst2, %intconst0, %intconst1, %this, i, x]
[77@L72] sum = 0.0; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, x]
[78@L73] j = 0; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, x]
[79@L73] nop; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, x]
[80@L73] temp$54 = %this.<GaussianElimination: int n>; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, temp$54, x]
[81@L73] if (j < temp$54) goto 83; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, x]
[82@L73] goto 93; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, x]
[83@L73] nop; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, x]
[84@L74] temp$56 = %this.<GaussianElimination: double[][] a>; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, temp$56, x]
[85@L74] temp$58 = temp$56[i]; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, temp$58, x]
[86@L74] temp$62 = temp$58[j]; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, temp$62, x]
[87@L74] temp$63 = x[j]; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, temp$62, temp$63, x]
[88@L74] temp$64 = temp$62 * temp$63; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, temp$64, x]
[89@L74] sum = sum + temp$64; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, x]
[90@L74] nop; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, x]
[91@L73] j = j + %intconst0; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, x]
[92@L73] goto 79; [%doubleconst2, %intconst0, %intconst1, %this, i, j, sum, x]
[93@L73] nop; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, x]
[94@L76] temp$68 = %this.<GaussianElimination: double[][] a>; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, temp$68, x]
[95@L76] temp$70 = temp$68[i]; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, temp$70, x]
[96@L76] temp$71 = %this.<GaussianElimination: int n>; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, temp$70, temp$71, x]
[97@L76] temp$72 = temp$70[temp$71]; [%doubleconst2, %intconst0, %intconst1, %this, i, sum, temp$72, x]
[98@L76] temp$73 = temp$72 - sum; [%doubleconst2, %intconst0, %intconst1, %this, i, temp$73, x]
[99@L76] temp$74 = invokestatic <java.lang.Math: double abs(double)>(temp$73); [%doubleconst2, %intconst0, %intconst1, %this, i, temp$74, x]
[100@L76] temp$75 = temp$74 cmpl %doubleconst2; [%doubleconst2, %intconst0, %intconst1, %this, i, temp$75, x]
[101@L76] if (temp$75 <= %intconst1) goto 106; [%doubleconst2, %intconst0, %intconst1, %this, i, x]
[102@L76] goto 103; []
[103@L76] nop; []
[104@L76] temp$76 = null; [temp$76]
[105@L77] return temp$76; []
[106@L77] nop; [%doubleconst2, %intconst0, %intconst1, %this, i, x]
[107@L77] nop; [%doubleconst2, %intconst0, %intconst1, %this, i, x]
[108@L71] i = i + %intconst0; [%doubleconst2, %intconst0, %intconst1, %this, i, x]
[109@L71] goto 72; [%doubleconst2, %intconst0, %intconst1, %this, i, x]
[110@L71] nop; [x]
[111@L79] return x; []

