<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=big5">
<META content="MSHTML 6.00.2600.0" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>hi,</FONT></DIV>
<DIV><FONT face=Arial size=2>   When I trying 
gdbserver,</FONT></DIV>
<DIV>
<DIV><FONT face=Arial size=2>        
server.c</FONT></DIV>
<DIV><FONT face=Arial size=2>        
    printf("before setjmp\n");</FONT></DIV>
<DIV><FONT face=Arial size=2>        
    if (setjmp(toplevel))</FONT></DIV>
<DIV><FONT face=Arial size=2>        
    {</FONT></DIV>
<DIV><FONT face=Arial size=2>        
        ...</FONT></DIV>
<DIV><FONT face=Arial size=2>        
    }</FONT></DIV>
<DIV><FONT face=Arial size=2>        
    printf("after setjmp\n");</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>    the resule is:</FONT></DIV>
<DIV><FONT face=Arial size=2>        before 
setjmp<BR>        pid 618: failed 11</FONT></DIV>
<DIV><FONT face=Arial size=2>    </FONT></DIV>
<DIV><FONT face=Arial size=2>    after a while of trace, I found 
that the output of arm-elf-elf2flt seems a little strange,</FONT></DIV>
<DIV><FONT face=Arial size=2>    the result of arm-elf-objdump 
gdbserver.gdb -D</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>    00004260 
<_setjmp>:<BR>        4260: e3a01000 
 mov r1, #0 ; 0x0<BR>        
4264: <FONT color=#ff0000>ea</FONT>000379  <FONT 
color=#ff0000>b</FONT> 5050 <__sigsetjmp></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>    00005050 
<__sigsetjmp>:<BR>        
5050: e2800030  add r0, r0, #48 ; 0x30<BR>    
    5054: e8806ff0  stmia r0, {r4, r5, r6, r7, r8, 
r9, r10, r11, sp, lr}<BR>        
5058: e2400030  sub r0, r0, #48 ; 0x30<BR>    
    505c: <FONT color=#ff0000>ea</FONT>000004  <FONT 
color=#ff0000>b</FONT> 5074 <__sigjmp_save></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>    however, when I check the 
contain of gdbserver:</FONT></DIV>
<DIV><FONT face=Arial size=2>        
e3a01000        ==> mov r1, #0</FONT></DIV>
<DIV><FONT face=Arial size=2>        <FONT 
color=#ff0000>eb</FONT>000379        
==> <FONT color=#ff0000>bl</FONT> 5050</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial 
size=2>        e2800030        ==> 
add r0, r0, #48 ; 
0x30<BR>        e8806ff0 
         ==> stmia r0, {r4, r5, 
r6, r7, r8, r9, r10, r11, sp, 
lr}<BR>        e2400030         
==> sub r0, r0, #48 ; 
0x30<BR>        <FONT 
color=#ff0000>eb</FONT>000004         ==> 
<FONT color=#ff0000>bl</FONT> 5074 <__sigjmp_save></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>    the 'b' command in the original 
code is become 'bl'</FONT></DIV>
<DIV><FONT face=Arial size=2>    I think this maybe the reason 
why my gdbserver will crash.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>    Does this is the bug of 
arm-elf-elf2flt?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>    Thanks in advance for your 
help.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>    Liang 
Ming-Chung</FONT></DIV></DIV></BODY></HTML>