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,30 ****
--- 21,33 ----
/*
* 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,248 ****
if (found_push == B_FALSE) {
if (sz != 1)
continue;
n = INSTR1(ins, i);
! 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++)
if (save_fp_movs[j] == n)
return (B_TRUE);
}
}
--- 232,251 ----
if (found_push == B_FALSE) {
if (sz != 1)
continue;
n = INSTR1(ins, i);
! 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++)
if (save_fp_movs[j] == n)
return (B_TRUE);
}
}