[Bug target/35180] built-in-setjmp.x2

2009-03-23 Thread joel at gcc dot gnu dot org


--- Comment #11 from joel at gcc dot gnu dot org  2009-03-23 17:56 ---
Closing.  This found an issue in the RTEMS ta 3 trap handler.  Resolved on the
RTEMS side.


-- 

joel at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35180



[Bug target/35180] built-in-setjmp.x2

2009-03-18 Thread joel at gcc dot gnu dot org


--- Comment #6 from joel at gcc dot gnu dot org  2009-03-18 14:27 ---
OK. I decided to look at this in more detail in the simulator.  The failing
instruction is:

 2001358:   d0 07 bf fc ld  [ %fp + -4 ], %o0

and when I run with a breakpoint there, a dump of the registers shows that fp
is 0!!  When I try to step, it doesn't happen.  If I do a watch $fp, it never
goes to 0 and runs correctly.

The task has a 256K stack so it isn't blowing it. No interrupts are occurring. 
No context switches are occurring.

Any ideas on how to narrow this down would be appreciated.  Normal debugging
seems to be failing me.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35180



[Bug target/35180] built-in-setjmp.x2

2009-03-18 Thread ebotcazou at gcc dot gnu dot org


--- Comment #7 from ebotcazou at gcc dot gnu dot org  2009-03-18 16:56 
---
 OK. I decided to look at this in more detail in the simulator.  The failing
 instruction is:
 
  2001358:   d0 07 bf fc ld  [ %fp + -4 ], %o0
 
 and when I run with a breakpoint there, a dump of the registers shows that
 fp is 0!!  When I try to step, it doesn't happen.  If I do a watch $fp,
 it never goes to 0 and runs correctly.

Looks like the current register window is not flushed before the setjmp.  You
need to investigate whether traps work correctly on the simulator.


-- 

ebotcazou at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||ebotcazou at gcc dot gnu dot
   ||org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35180



[Bug target/35180] built-in-setjmp.x2

2009-03-18 Thread joel at gcc dot gnu dot org


--- Comment #8 from joel at gcc dot gnu dot org  2009-03-18 17:12 ---
(In reply to comment #7)
  OK. I decided to look at this in more detail in the simulator.  The failing
  instruction is:
  
   2001358:   d0 07 bf fc ld  [ %fp + -4 ], %o0
  
  and when I run with a breakpoint there, a dump of the registers shows that
  fp is 0!!  When I try to step, it doesn't happen.  If I do a watch $fp,
  it never goes to 0 and runs correctly.
 
 Looks like the current register window is not flushed before the setjmp.  You
 need to investigate whether traps work correctly on the simulator.
 

I think I see this now.  It looks like ta 3 is not flush on RTEMS.   I am
going to have to talk with some of the SPARC RTEMS folks to make sure and
address this one.  Leave it open.  I am reassigning this to me since it
looks RTEMS run-time specific.


-- 

joel at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |joel at gcc dot gnu dot org
   |dot org |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35180



[Bug target/35180] built-in-setjmp.x2

2009-03-18 Thread joel at gcc dot gnu dot org


--- Comment #9 from joel at gcc dot gnu dot org  2009-03-18 18:18 ---
Jiri Gaisler confirms there is no ta 3 handler in RTEMS currently.  He will
be adding it to RTEMS.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35180



[Bug target/35180] built-in-setjmp.x2

2009-03-18 Thread ebotcazou at gcc dot gnu dot org


--- Comment #10 from ebotcazou at gcc dot gnu dot org  2009-03-18 18:54 
---
Subject: Bug 35180

Author: ebotcazou
Date: Wed Mar 18 18:54:31 2009
New Revision: 144942

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=144942
Log:
PR target/35180
* config/sparc/sparc.md (do_builtin_setjmp_setup): Prettify asm output.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/sparc/sparc.md


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35180



[Bug target/35180] built-in-setjmp.x2

2009-03-17 Thread joel at gcc dot gnu dot org


--- Comment #2 from joel at gcc dot gnu dot org  2009-03-17 14:02 ---
Yes.  

See http://gcc.gnu.org/ml/gcc-testresults/2009-03/msg00362.html.  

We also cross post them to an RTEMS tool list and apparently the run on 12
March
resulted in a log that was too large for gcc-testresults.

http://www.rtems.org/pipermail/rtems-tooltestresults/2009-March/000232.html

Is there anything I can do to help with this?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35180



[Bug target/35180] built-in-setjmp.x2

2009-03-17 Thread hp at gcc dot gnu dot org


--- Comment #3 from hp at gcc dot gnu dot org  2009-03-17 17:13 ---
(In reply to comment #2)
 Is there anything I can do to help with this?

If you could bisect the behaviour to a svn revision range, that might give a
clue.
See the description of the aforementioned bug (where it's unfortunately also
evident that it's not a silver bullet...)


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35180



[Bug target/35180] built-in-setjmp.x2

2009-03-17 Thread joel at gcc dot gnu dot org


--- Comment #4 from joel at gcc dot gnu dot org  2009-03-17 17:32 ---
Going back through the old run logs.  Is this how it shows up?

FAIL: gcc.c-torture/execute/built-in-setjmp.c execution,  -O0 
FAIL: gcc.c-torture/execute/built-in-setjmp.c execution,  -O1 
FAIL: gcc.c-torture/execute/built-in-setjmp.c execution,  -O2 
FAIL: gcc.c-torture/execute/built-in-setjmp.c execution,  -O3
-fomit-frame-pointer 
FAIL: gcc.c-torture/execute/built-in-setjmp.c execution,  -O3
-fomit-frame-pointer -funroll-loops 
FAIL: gcc.c-torture/execute/built-in-setjmp.c execution,  -O3
-fomit-frame-pointer -funroll-all-loops -finline-functions 
FAIL: gcc.c-torture/execute/built-in-setjmp.c execution,  -O3 -g 
FAIL: gcc.c-torture/execute/built-in-setjmp.c execution,  -Os 

So far I see those in logs back to May 2008 (revision 135528):

http://gcc.gnu.org/ml/gcc-testresults/2008-05/msg01876.html

And apparently it failed in 4.3.0:

http://gcc.gnu.org/ml/gcc-testresults/2008-05/msg00535.html

And 4.2.3

http://gcc.gnu.org/ml/gcc-testresults/2008-04/msg00645.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35180



[Bug target/35180] built-in-setjmp.x2

2009-03-16 Thread hp at gcc dot gnu dot org


--- Comment #1 from hp at gcc dot gnu dot org  2009-03-17 04:18 ---
Does this still happen?  See also PR38609.


-- 

hp at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||hp at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35180