https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89179
Steve Ellcey <sje at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |sje at gcc dot gnu.org --- Comment #14 from Steve Ellcey <sje at gcc dot gnu.org> --- I think I may be seeing this same bug on aarch64 when building the RAJA library based on where I am dying in ggc_set_mark. I have not been able to create a preprocessed test case because when I compile the preprocessed sources the bug does not happen. Here is my segfault dump: min.cpp:191:1: internal compiler error: Segmentation fault 191 | } | ^ 0xf03b5f crash_signal ../../gcc/gcc/toplev.c:326 0x9cc86c lookup_page_table_entry ../../gcc/gcc/ggc-page.c:632 0x9cc86c ggc_set_mark(void const*) ../../gcc/gcc/ggc-page.c:1531 0xc6fe47 gt_ggc_mx_symtab_node(void*) /home/sellcey/gcc-raja/obj-gcc/gcc/gtype-desc.c:1302 0xe17503 gt_ggc_ma_order ./gt-passes.h:31 0xbe44f3 ggc_mark_root_tab ../../gcc/gcc/ggc-common.c:77 0xbe4813 ggc_mark_roots() ../../gcc/gcc/ggc-common.c:94 0x9cd1fb ggc_collect() ../../gcc/gcc/ggc-page.c:2201 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. When I look at gt_ggc_mx_symtab_node, the initial x_p pointer that comes in is reasonable (0xffffa020c210) but after xlimit = ((*xlimit).next); The value of xlimit becomes 0xa5a5a5a5a5a5a5a5. That looks like a bogus value something might have put into memory to poison it but I didn't see that specific string in the GCC source tree anywhere.