Testing on m68k-linux -mcpu=5206 (aka coldfire, aka no cas insn) revealed that 
we hadn't properly registered __sync_val_compare_and_swap_4.  Oops.


r~
        * optabs.c (init_sync_libfuncs_1): Include max in iteration.



diff --git a/gcc/optabs.c b/gcc/optabs.c
index 1aafd28..0ce21e9 100644
--- a/gcc/optabs.c
+++ b/gcc/optabs.c
@@ -6606,7 +6606,7 @@ init_sync_libfuncs_1 (optab tab, const char *base, int 
max)
   buf[len + 2] = '\0';
 
   mode = QImode;
-  for (i = 1; i < max; i *= 2)
+  for (i = 1; i <= max; i *= 2)
     {
       buf[len + 1] = '0' + i;
       set_optab_libfunc (tab, mode, buf);

Reply via email to