On 1/16/21 4:38 AM, BALATON Zoltan wrote: > Hello, > > Commit 8fe35e0444be (tcg/optimize: Use tcg_constant_internal with constant > folding) seems to break PPC emulation for me: > > Thread 3 "qemu-system-ppc" received signal SIGSEGV, Segmentation fault. > [Switching to Thread 0x7ffff51e7700 (LWP 22636)] > 0x0000555555afd4ee in ts_are_copies (ts2=0x7fff8c008f90, ts1=0x7fff8c001510) > at > ../tcg/optimize.c:68 > 68 return ts_info(ts)->next_copy != ts;
Ok, riscv32 seems to have the same problem. I'm on it. I'll note that check-acceptance passes, so this points out a hole in our testing... r~ > (gdb) bt > #0 0x0000555555afd4ee in ts_are_copies (ts2=0x7fff8c008f90, > ts1=0x7fff8c001510) at tcg/optimize.c:68 > #1 0x0000555555afd4ee in tcg_opt_gen_mov > (s=s@entry=0x7fff8c000b60, op=op@entry=0x7fff8c6b2348, > dst=140735542203664, > src=140735542235024) at tcg/optimize.c:191 > #2 0x0000555555afe05a in tcg_opt_gen_movi > (s=s@entry=0x7fff8c000b60, temps_used=temps_used@entry=0x7ffff51e63c0, > op=op@entry=0x7fff8c6b2348, dst=<optimized out>, > val=<optimized out>) at include/tcg/tcg.h:731 > #3 0x0000555555aff79f in tcg_optimize (s=s@entry=0x7fff8c000b60) at > tcg/optimize.c:1189 > #4 0x0000555555b13c39 in tcg_gen_code (s=0x7fff8c000b60, > tb=tb@entry=0x7fffb3181380 <code_gen_buffer+4088659>) at tcg/tcg.c:4490 > #5 0x0000555555b1b485 in tb_gen_code > (cpu=cpu@entry=0x55555651c870, pc=pc@entry=4287582720, > cs_base=cs_base@entry=0, flags=flags@entry=24576, cflags=-16777216, > cflags@entry=0) at accel/tcg/translate-all.c:1952 > #6 0x0000555555b7c303 in tb_find (cf_mask=0, tb_exit=0, last_tb=0x0, cpu=0x0) > at accel/tcg/cpu-exec.c:454 > #7 0x0000555555b7c303 in cpu_exec (cpu=cpu@entry=0x55555651c870) at > accel/tcg/cpu-exec.c:810 > #8 0x0000555555ab5ea2 in tcg_cpus_exec (cpu=cpu@entry=0x55555651c870) at > accel/tcg/tcg-cpus.c:57 > #9 0x0000555555ab7a03 in rr_cpu_thread_fn (arg=arg@entry=0x55555651c870) at > accel/tcg/tcg-cpus-rr.c:217 > #10 0x0000555555cc355a in qemu_thread_start (args=<optimized out>) at > util/qemu-thread-posix.c:521 > #11 0x00007ffff6cc004c in start_thread () at /lib64/libpthread.so.0 > #12 0x00007ffff6bf13af in clone () at /lib64/libc.so.6 > > This can be reproduced for example with booting AROS as described here: > > http://zero.eik.bme.hu/~balaton/qemu/amiga/#aros > > The segfault happens during boot. > > Regards, > BALATON Zoltan