Revision 5fafdf24 gdbstub.c
b/gdbstub.c | ||
---|---|---|
1 | 1 |
/* |
2 | 2 |
* gdb server stub |
3 |
*
|
|
3 |
* |
|
4 | 4 |
* Copyright (c) 2003-2005 Fabrice Bellard |
5 | 5 |
* |
6 | 6 |
* This library is free software; you can redistribute it and/or |
... | ... | |
252 | 252 |
registers[41] = 0; /* foseg */ |
253 | 253 |
registers[42] = 0; /* fooff */ |
254 | 254 |
registers[43] = 0; /* fop */ |
255 |
|
|
255 |
|
|
256 | 256 |
for(i = 0; i < 16; i++) |
257 | 257 |
tswapls(®isters[i]); |
258 | 258 |
for(i = 36; i < 44; i++) |
... | ... | |
543 | 543 |
/* F0-F7. The 68881/68040 have 12-bit extended precision registers. |
544 | 544 |
ColdFire has 8-bit double precision registers. */ |
545 | 545 |
for (i = 0; i < 8; i++) { |
546 |
u.l.upper = tswap32(*(uint32_t *)ptr);
|
|
546 |
u.l.upper = tswap32(*(uint32_t *)ptr); |
|
547 | 547 |
u.l.lower = tswap32(*(uint32_t *)ptr); |
548 | 548 |
env->fregs[i] = u.d; |
549 | 549 |
} |
... | ... | |
748 | 748 |
uint8_t mem_buf[2000]; |
749 | 749 |
uint32_t *registers; |
750 | 750 |
target_ulong addr, len; |
751 |
|
|
751 |
|
|
752 | 752 |
#ifdef DEBUG_GDB |
753 | 753 |
printf("command='%s'\n", line_buf); |
754 | 754 |
#endif |
... | ... | |
1073 | 1073 |
/* when the CPU is running, we cannot do anything except stop |
1074 | 1074 |
it when receiving a char */ |
1075 | 1075 |
vm_stop(EXCP_INTERRUPT); |
1076 |
} else
|
|
1076 |
} else |
|
1077 | 1077 |
#endif |
1078 | 1078 |
{ |
1079 | 1079 |
switch(s->state) { |
... | ... | |
1201 | 1201 |
/* set short latency */ |
1202 | 1202 |
val = 1; |
1203 | 1203 |
setsockopt(fd, IPPROTO_TCP, TCP_NODELAY, (char *)&val, sizeof(val)); |
1204 |
|
|
1204 |
|
|
1205 | 1205 |
s = &gdbserver_state; |
1206 | 1206 |
memset (s, 0, sizeof (GDBState)); |
1207 | 1207 |
s->env = first_cpu; /* XXX: allow to change CPU */ |
Also available in: Unified diff