// ************************************************************************** // // // // eses eses // // eses eses // // eses eseses esesese eses Embedded Systems Group // // ese ese ese ese ese // // ese eseseses eseseses ese Department of Computer Science // // eses eses ese eses // // eses eseses eseseses eses University of Kaiserslautern // // eses eses // // // // ************************************************************************** // [2][2]nat a; [2][2]nat b; [2][2]nat c; thread MatrixMultCannon { nat t_1,t_2,t_3,t_4,t_5,t_6,t_7,t_8,t_9,t_10,t_11,t_12; t_1 = a[0][0]; t_2 = a[0][1]; t_3 = a[1][1]; t_4 = a[1][0]; t_5 = b[0][0]; t_6 = b[1][1]; t_7 = b[1][0]; t_8 = b[0][1]; t_5 = t_7; t_1 = t_2; t_9 = t_9 + t_1 * t_5; t_5 = t_7; t_1 = t_2; t_9 = t_9 + t_1 * t_5; t_6 = t_8; t_2 = t_1; t_10 = t_10 + t_2 * t_6; t_6 = t_8; t_2 = t_1; t_10 = t_10 + t_2 * t_6; t_7 = t_5; t_3 = t_4; t_11 = t_11 + t_3 * t_7; t_7 = t_5; t_3 = t_4; t_11 = t_11 + t_3 * t_7; t_8 = t_6; t_4 = t_3; t_12 = t_12 + t_4 * t_8; t_8 = t_6; t_4 = t_3; t_12 = t_12 + t_4 * t_8; c[0][0] = t_9; c[0][1] = t_10; c[1][0] = t_11; c[1][1] = t_12; }