Print this page
10468 __ctype_mask[EOF] has been working by accident
10469 GCC's -faggressive-loop-optimizations is too aggressive
10470 array over-read in has_saved_fp()
Reviewed by: Robert Mustacchi <rm@joyent.com>
Reviewed by: John Levon <john.levon@joyent.com>

@@ -21,10 +21,13 @@
 /*
  * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
 
+/*
+ * Copyright 2019 Joyent, Inc.
+ */
 
 /*
  * The Sun Studio and GCC (patched for opensolaris/illumos) compilers
  * implement a argument saving scheme on amd64 via the -Wu,save-args or
  * options.  When the option is specified, INTEGER type function arguments

@@ -229,20 +232,20 @@
                 if (found_push == B_FALSE) {
                         if (sz != 1)
                                 continue;
 
                         n = INSTR1(ins, i);
-                        for (j = 0; j <= NUM_FP_PUSHES; j++)
+                        for (j = 0; j < NUM_FP_PUSHES; j++)
                                 if (save_fp_pushes[j] == n) {
                                         found_push = B_TRUE;
                                         break;
                                 }
                 } else {
                         if (sz != 3)
                                 continue;
                         n = INSTR3(ins, i);
-                        for (j = 0; j <= NUM_FP_MOVS; j++)
+                        for (j = 0; j < NUM_FP_MOVS; j++)
                                 if (save_fp_movs[j] == n)
                                         return (B_TRUE);
                 }
         }