> Reverting your patch makes it go away too. I'll try and look into it > tomorrow.
tree build_string (int len, const char *str) { tree s; size_t length; length = len + sizeof (struct tree_string); s = ggc_alloc_tree (length); Breakpoint 5, build_string (len=34, str=0x1048e58 "No space for profiling buffer(s)\n") at /home/eric/svn/gcc/gcc/tree.c:1124 1124 length = len + sizeof (struct tree_string); (gdb) next 1131 s = ggc_alloc_tree (length); (gdb) p length $1 = 58 (gdb) next 1133 memset (s, 0, sizeof (struct tree_common)); (gdb) p s $2 = 0xff3803fc 's' should be 8-byte aligned because it's a "tree". ggc_alloc_stat (size=58) at /home/eric/svn/gcc/gcc/ggc-page.c:1089 1089 if (size < 512) (gdb) next 1091 order = size_lookup[size]; (gdb) 1092 object_size = OBJECT_SIZE (order); (gdb) 1103 entry = G.pages[order]; (gdb) p order $6 = 41 (gdb) p object_size $7 = 60 Breakpoint 6, init_ggc () at /home/eric/svn/gcc/gcc/ggc-page.c:1548 1548 mask = ~(((unsigned)-1) << ffs (OBJECT_SIZE (order))); (gdb) p order $19 = 41 (gdb) next 1549 mask &= 2 * MAX_ALIGNMENT - 1; (gdb) x/i $pc 0xa931c8 <init_ggc+764>: ld [ %fp + -24 ], %g1 (gdb) x/i 0xa931cc <init_ggc+768>: and %g1, 0xf, %g1 -- Eric Botcazou