Open
Description
Can reproduce locally by running the following command in an infinite loop:
./test.sh --std-tests
Gdb output:
Program terminated with signal SIGSEGV, Segmentation fault.
#0 lookup_page_table_entry (p=0xfa91b8780000001e) at /gcc-repo/gcc-build/build/../../gcc/gcc/ggc-page.cc:630
warning: Source file is more recent than executable.
630 while (table->high_bits != high_bits)
=> 0x00007f9e5d08308b <_Z12ggc_set_markPKv+43>: 48 3b 48 08 cmp rcx,QWORD PTR [rax+0x8]
0x00007f9e5d08308f <_Z12ggc_set_markPKv+47>: 75 f7 jne 0x7f9e5d083088 <_Z12ggc_set_markPKv+40>
[Current thread is 1 (Thread 0x7f9e531ff6c0 (LWP 444345))]
warning: Missing auto-load script at offset 0 in section .debug_gdb_scripts
of file /rustc_codegen_gcc/target/debug/librustc_codegen_gcc.so.
Use `info auto-load python-scripts [REGEXP]' to list them.
(gdb) p table
$1 = (page_table) 0x0
(gdb) list
625 #if HOST_BITS_PER_PTR <= 32
626 base = &G.lookup[0];
627 #else
628 page_table table = G.lookup;
629 uintptr_t high_bits = (uintptr_t) p & ~ (uintptr_t) 0xffffffff;
630 while (table->high_bits != high_bits)
631 table = table->next;
632 base = &table->table[0];
633 #endif