------- 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

Reply via email to