Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
* Fix gdbserver on ia64
@ 2005-10-24 23:56 Andreas Schwab
  2005-10-25  8:02 ` Daniel Jacobowitz
  0 siblings, 1 reply; 4+ messages in thread
From: Andreas Schwab @ 2005-10-24 23:56 UTC (permalink / raw)
  To: gdb-patches

This patch makes gdbserver on ia64 a bit more useful:

- gdb assumes 462 registers, gdbserver 590 registers, causing a mismatch
  on the 'g' packet
- gdb assumes it can send/receive at most the size of a 'g' packet in one
  'm' packet, gdbserver was assuming at most 2000 bytes.

Andreas.

2005-10-25  Andreas Schwab  <schwab@suse.de>

	* regformats/reg-ia64.dat: Remove NAT registers.

gdbserver:
	* server.c (main): Allocate mem_buf with PBUFSIZ bytes.

	* linux-ia64-low.c (ia64_regmap): Remove NAT registers.
	(ia64_num_regs): Reduce to 462.

--- gdb/gdbserver/linux-ia64-low.c.~1.3.~	2002-04-10 11:08:18.000000000 +0200
+++ gdb/gdbserver/linux-ia64-low.c	2005-10-25 00:57:36.000000000 +0200
@@ -26,7 +26,7 @@
 #include <sys/reg.h>
 #endif
 
-#define ia64_num_regs 590
+#define ia64_num_regs 462
 
 #include <asm/ptrace_offsets.h>
 
@@ -263,24 +263,6 @@ static int ia64_regmap[] =
     -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
     -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
     -1,
-    /* nat bits - not fetched directly; instead we obtain these bits from
-       either rnat or unat or from memory. */
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
-    -1, -1, -1, -1, -1, -1, -1, -1,
   };
 
 static int
--- gdb/gdbserver/server.c.~1.28.~	2005-07-14 10:09:54.000000000 +0200
+++ gdb/gdbserver/server.c	2005-10-25 01:14:46.000000000 +0200
@@ -322,7 +322,7 @@ int
 main (int argc, char *argv[])
 {
   char ch, status, *own_buf;
-  unsigned char mem_buf[2000];
+  unsigned char *mem_buf;
   int i = 0;
   int signal;
   unsigned int len;
@@ -359,6 +359,7 @@ main (int argc, char *argv[])
   initialize_low ();
 
   own_buf = malloc (PBUFSIZ);
+  mem_buf = malloc (PBUFSIZ);
 
   if (pid == 0)
     {
--- gdb/regformats/reg-ia64.dat.~1.1.~	2002-02-01 23:05:28.000000000 +0100
+++ gdb/regformats/reg-ia64.dat	2005-10-25 01:04:29.000000000 +0200
@@ -473,131 +473,3 @@ expedite:ip,psr,r12,bsp,cfm
 64:
 64:
 64:
-64:nat0
-64:nat1
-64:nat2
-64:nat3
-64:nat4
-64:nat5
-64:nat6
-64:nat7
-64:nat8
-64:nat9
-64:nat10
-64:nat11
-64:nat12
-64:nat13
-64:nat14
-64:nat15
-64:nat16
-64:nat17
-64:nat18
-64:nat19
-64:nat20
-64:nat21
-64:nat22
-64:nat23
-64:nat24
-64:nat25
-64:nat26
-64:nat27
-64:nat28
-64:nat29
-64:nat30
-64:nat31
-64:nat32
-64:nat33
-64:nat34
-64:nat35
-64:nat36
-64:nat37
-64:nat38
-64:nat39
-64:nat40
-64:nat41
-64:nat42
-64:nat43
-64:nat44
-64:nat45
-64:nat46
-64:nat47
-64:nat48
-64:nat49
-64:nat50
-64:nat51
-64:nat52
-64:nat53
-64:nat54
-64:nat55
-64:nat56
-64:nat57
-64:nat58
-64:nat59
-64:nat60
-64:nat61
-64:nat62
-64:nat63
-64:nat64
-64:nat65
-64:nat66
-64:nat67
-64:nat68
-64:nat69
-64:nat70
-64:nat71
-64:nat72
-64:nat73
-64:nat74
-64:nat75
-64:nat76
-64:nat77
-64:nat78
-64:nat79
-64:nat80
-64:nat81
-64:nat82
-64:nat83
-64:nat84
-64:nat85
-64:nat86
-64:nat87
-64:nat88
-64:nat89
-64:nat90
-64:nat91
-64:nat92
-64:nat93
-64:nat94
-64:nat95
-64:nat96
-64:nat97
-64:nat98
-64:nat99
-64:nat100
-64:nat101
-64:nat102
-64:nat103
-64:nat104
-64:nat105
-64:nat106
-64:nat107
-64:nat108
-64:nat109
-64:nat110
-64:nat111
-64:nat112
-64:nat113
-64:nat114
-64:nat115
-64:nat116
-64:nat117
-64:nat118
-64:nat119
-64:nat120
-64:nat121
-64:nat122
-64:nat123
-64:nat124
-64:nat125
-64:nat126
-64:nat127

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Fix gdbserver on ia64
  2005-10-24 23:56 Fix gdbserver on ia64 Andreas Schwab
@ 2005-10-25  8:02 ` Daniel Jacobowitz
  2005-10-25 11:16   ` Andreas Schwab
  0 siblings, 1 reply; 4+ messages in thread
From: Daniel Jacobowitz @ 2005-10-25  8:02 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: gdb-patches

On Tue, Oct 25, 2005 at 01:47:10AM +0200, Andreas Schwab wrote:
> This patch makes gdbserver on ia64 a bit more useful:
> 
> - gdb assumes 462 registers, gdbserver 590 registers, causing a mismatch
>   on the 'g' packet
> - gdb assumes it can send/receive at most the size of a 'g' packet in one
>   'm' packet, gdbserver was assuming at most 2000 bytes.

Thanks!  These are fine.  Please get the copyright date in
linux-ia64-low.c too.

Do you know offhand if the NAT bits change is a recent change in gdb,
or if I got it wrong to begin with?  I don't know if I ever tested the
ia64 bits.

-- 
Daniel Jacobowitz
CodeSourcery, LLC


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Fix gdbserver on ia64
  2005-10-25  8:02 ` Daniel Jacobowitz
@ 2005-10-25 11:16   ` Andreas Schwab
  2005-10-25 12:40     ` Andreas Schwab
  0 siblings, 1 reply; 4+ messages in thread
From: Andreas Schwab @ 2005-10-25 11:16 UTC (permalink / raw)
  To: gdb-patches

Daniel Jacobowitz <drow@false.org> writes:

> Do you know offhand if the NAT bits change is a recent change in gdb,
> or if I got it wrong to begin with?

The nat registers were changed to being pseudo registers about a year ago,
as part of the changes by Jeff Johnston.

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Fix gdbserver on ia64
  2005-10-25 11:16   ` Andreas Schwab
@ 2005-10-25 12:40     ` Andreas Schwab
  0 siblings, 0 replies; 4+ messages in thread
From: Andreas Schwab @ 2005-10-25 12:40 UTC (permalink / raw)
  To: gdb-patches

Andreas Schwab <schwab@suse.de> writes:

> Daniel Jacobowitz <drow@false.org> writes:
>
>> Do you know offhand if the NAT bits change is a recent change in gdb,
>> or if I got it wrong to begin with?
>
> The nat registers were changed to being pseudo registers about a year ago,

Actually two years ago (but still after initial gdbserver support was
added).

Andreas.

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2005-10-25 11:16 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-10-24 23:56 Fix gdbserver on ia64 Andreas Schwab
2005-10-25  8:02 ` Daniel Jacobowitz
2005-10-25 11:16   ` Andreas Schwab
2005-10-25 12:40     ` Andreas Schwab

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox