After tried, I guess, I have found the root cause, this issue is about tilegx qemu linux-user in setup_rt_frame() in linux-user/signal.c: - When there is no ka->sa_restorer in setup_rt_frame(), I should make the related opcode in guest space (about TARGET_NR_rt_sigreturn), should not directly use do_rt_sigreturn() from host space. - Then when cleanup-10.exe catch the failure, the lr register will get the opcode address for TARGET_NR_rt_sigreturn. After several normal successful rewind, cleanup-10.exe will call this address. - But my implementation let the related address is do_rt_sigreturn which is in host space (an invalid address for cleanup-10.exe), then cause the rewind failure. It really spends me much free time resources, I almost make a qemu as a debugger!! I guess, I shall add some necessary debug features in tile qemu (just like the other targets have done). Welcome any suggestions! Thanks. On 3/6/16 08:09, Chen Gang wrote: > Hello all: > > Sorry for disappearing several months, the reasons (excuses) are: > > - During these days, I am a little busy (although it is not a quite > good excuse). > > - China Spring Festival (it maybe be a reason/excuse). > > - I blocked at cleanup-10.exe failure issue (build gcc/testsuite/gcc.dg > /cleanup-10.c). I guess, this issue isn't quit complex to me, but it > needs quite a few of my free time resources (e.g. several months) :-( > > At present, I let my tile qemu almost be a crashdump: dump full working > flow (all insns and regs - 2G file, 34M lines), dump simple working flow > (all insns - 82M file, 2M lines). check them with objdump and src code. > > I shall continue for it (for cleanup-10.exe issue firstly), and welcome > any ideas, suggestions, and completions by any members. > > Thanks. > -- Chen Gang (陈刚) Managing Natural Environments is the Duty of Human Beings.