------- Comment #14 from joel at gcc dot gnu dot org 2009-01-19 19:15 ------- (In reply to comment #12) > How can I reproduce it on Linux/x86-64, assuming I know nothing > about rtems and sim? >
You don't have to know much of anything. It should be reproducible with powerpc-elf but this is the known way to the goal. I configure gdb 6.8 this way using a GCC SVN native compiler. rm -rf b-gdb && mkdir b-gdb && cd b-gdb && \ ../gdb-6.8/configure --target=powerpc-rtems4.10 \ --disable-werror --enable-sim --enable-sim-hardware --enable-timebase \ --enable-sim-trace 2>&1 && \ make That should give you an executable named "run" in the sim/ppc subdirectory of the build tree. There are two attachments to this PR: + powerpc-ticker-ticker.ralf.bz2 + psim-4.10 uncompress the ticker executable anywhere. The psim-4.10 scripts creates a psim device tree and runs the executable that is $1. Edit to fix the definition of "RUN" to get the "run" executable in the build tree. I place the psim-4.10 program in my "gcc-pr38587" and it picks up the run executable from the build. It assumes you are in the build tree when run. ../psim-4.10 /home/joel/powerpc-psim-ticker.ralf It is a hack to make this easier to check since it has been broken for over a month and I have checked it every few days. It will print a few lines from tasks TA1, TA2, and TA3 and when it gets to the end, you get an assertion. Looking at the code in idecode.c, I suspect a setjmp/longjmp interacting with the register usage. But who knows. If you have trouble, I will try to answer quickly. Thanks. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38587