Bug fix in multiplication optimization
authorceriel <none@none>
Sat, 23 Nov 1991 12:17:18 +0000 (12:17 +0000)
committerceriel <none@none>
Sat, 23 Nov 1991 12:17:18 +0000 (12:17 +0000)
util/opt/peephole.c

index 3df8041..329a1a9 100644 (file)
@@ -777,19 +777,19 @@ repl_mul(lp, b, e)
                                newinstr(b, op_exg, sz); b = &((*b)->l_next);
                                newinstr(b, op_dup, 2*sz); b = &((*b)->l_next);
                                newinstr(b, op_asp, sz); b = &((*b)->l_next);
-                               newinstr(b, op_sbu, sz); b = &((*b)->l_next);
-                               retval++;
-                               newinstr(b, op_exg, sz); b = &((*b)->l_next);
-                               newinstr(b, op_loc, n1); b = &((*b)->l_next);
-                               newinstr(b, op_slu, sz); b = &((*b)->l_next);
-                               retval++;
-                               newinstr(b, op_exg, sz); b = &((*b)->l_next);
-                               newinstr(b, op_dup, 2*sz); b = &((*b)->l_next);
-                               newinstr(b, op_asp, sz); b = &((*b)->l_next);
-                               newinstr(b, op_adu, sz); b = &((*b)->l_next);
-                               newinstr(b, op_exg, sz); b = &((*b)->l_next);
-                               retval++;
                        }
+                       newinstr(b, op_sbu, sz); b = &((*b)->l_next);
+                       retval++;
+                       newinstr(b, op_exg, sz); b = &((*b)->l_next);
+                       newinstr(b, op_loc, n1); b = &((*b)->l_next);
+                       newinstr(b, op_slu, sz); b = &((*b)->l_next);
+                       retval++;
+                       newinstr(b, op_exg, sz); b = &((*b)->l_next);
+                       newinstr(b, op_dup, 2*sz); b = &((*b)->l_next);
+                       newinstr(b, op_asp, sz); b = &((*b)->l_next);
+                       newinstr(b, op_adu, sz); b = &((*b)->l_next);
+                       newinstr(b, op_exg, sz); b = &((*b)->l_next);
+                       retval++;
                        if (n0) {
                                newinstr(b, op_loc, n0); b = &((*b)->l_next);
                                newinstr(b, op_slu, sz); b = &((*b)->l_next);