diff options
author | Jim Kingdon <jkingdon@engr.sgi.com> | 1993-10-13 18:17:49 +0000 |
---|---|---|
committer | Jim Kingdon <jkingdon@engr.sgi.com> | 1993-10-13 18:17:49 +0000 |
commit | 9309b4d9291f1a40de779dbaf003b4e921e87c9e (patch) | |
tree | aaa42daa75df4a4969417766c729d16059e71d4c | |
parent | b7cbb59ff6d21d1f91bc6f87ee46511feed0966d (diff) | |
download | gdb-9309b4d9291f1a40de779dbaf003b4e921e87c9e.zip gdb-9309b4d9291f1a40de779dbaf003b4e921e87c9e.tar.gz gdb-9309b4d9291f1a40de779dbaf003b4e921e87c9e.tar.bz2 |
* printcmd.c (printf_command): Instead of using makeva* and
calling vprintf, just make the appropriate calls to printf.
* printcmd.c, config/pa/xm-pa.h, config/mips/xm-makeva.h,
config/alpha/xm-alpha.h, config/m88k/xm-m88k.h: Remove all
traces of makeva*. My apologies to everyone (including me!)
who spent so much time getting it to work on various machines,
but look at the bright side, at least you won't have to do it
again in the future.
* printcmd.c (printf_command): Make a cleanup for val_args (fixes
a memory leak).
-rw-r--r-- | gdb/ChangeLog | 14 | ||||
-rw-r--r-- | gdb/config/alpha/xm-alpha.h | 34 | ||||
-rw-r--r-- | gdb/config/m88k/xm-m88k.h | 28 | ||||
-rw-r--r-- | gdb/config/mips/xm-makeva.h | 20 | ||||
-rw-r--r-- | gdb/config/pa/xm-pa.h | 28 |
5 files changed, 20 insertions, 104 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index c8fc03a..682f68d 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,17 @@ +Wed Oct 13 11:47:23 1993 Jim Kingdon (kingdon@lioth.cygnus.com) + + * printcmd.c (printf_command): Instead of using makeva* and + calling vprintf, just make the appropriate calls to printf. + * printcmd.c, config/pa/xm-pa.h, config/mips/xm-makeva.h, + config/alpha/xm-alpha.h, config/m88k/xm-m88k.h: Remove all + traces of makeva*. My apologies to everyone (including me!) + who spent so much time getting it to work on various machines, + but look at the bright side, at least you won't have to do it + again in the future. + + * printcmd.c (printf_command): Make a cleanup for val_args (fixes + a memory leak). + Tue Oct 12 22:54:41 1993 Jim Kingdon (kingdon@lioth.cygnus.com) * config/mips/xm-mips.h: Remove comment about HAVE_SGTTY vs. usleep. diff --git a/gdb/config/alpha/xm-alpha.h b/gdb/config/alpha/xm-alpha.h index 5edc862..5274c3b 100644 --- a/gdb/config/alpha/xm-alpha.h +++ b/gdb/config/alpha/xm-alpha.h @@ -27,40 +27,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ /* The alpha has no siginterrupt routine. */ #define NO_SIGINTERRUPT -/* The alpha stores the first six float parameters below the va_list. - We make no distinction and store the first six parameters below - and above the va_list. */ -#define VA_FLOAT_ARGS_SIZE (6*8) -#define MAKEVA_SIZE(nargs, max_arg_size) \ - return sizeof (makeva_list) + nargs * max_arg_size + VA_FLOAT_ARGS_SIZE; -#define MAKEVA_START(list) \ - list->argindex = VA_FLOAT_ARGS_SIZE; -#define MAKEVA_ARG(list, argaddr, argsize) \ -{ \ - memcpy (&list->aligner.arg_bytes[list->argindex], argaddr, argsize); \ - if ((list->argindex - VA_FLOAT_ARGS_SIZE) < VA_FLOAT_ARGS_SIZE) \ - memcpy (&list->aligner.arg_bytes[list->argindex - VA_FLOAT_ARGS_SIZE],\ - argaddr, argsize); \ - list->argindex += argsize; \ -} -#ifdef __GNUC__ -#define MAKEVA_END(list) \ -{ \ - va_list ret; \ - ret.__base = &(list)->aligner.arg_bytes[VA_FLOAT_ARGS_SIZE]; \ - ret.__offset = 0; \ - return ret; \ -} -#else -#define MAKEVA_END(list) \ -{ \ - va_list ret; \ - ret.a0 = &(list)->aligner.arg_bytes[VA_FLOAT_ARGS_SIZE]; \ - ret.offset = 0; \ - return ret; \ -} -#endif - /* HAVE_SGTTY also works, but we have termios, so use it. */ #define HAVE_TERMIOS diff --git a/gdb/config/m88k/xm-m88k.h b/gdb/config/m88k/xm-m88k.h index 3ff3512..8f24de9 100644 --- a/gdb/config/m88k/xm-m88k.h +++ b/gdb/config/m88k/xm-m88k.h @@ -18,31 +18,3 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define HOST_BYTE_ORDER BIG_ENDIAN - -#define MAKEVA_END(list) \ - va_list retval; \ - retval.__va_arg = 0; \ - retval.__va_stk = (int *) (list)->aligner.arg_bytes; \ - retval.__va_reg = (int *) (list)->aligner.arg_bytes; \ - return retval; - -/* I don't know whether rounding the arguments to 4 or 8 bytes is correct - for the 88k, or whether it is just code borrowed from the pa. The issue - is moot for now, since printf_command only uses argsize of sizeof (int), - sizeof (double), or sizeof (long long). */ -#define MAKEVA_ARG(list, argaddr, argsize) \ - { \ - int rounded_argsize; \ - if (argsize > 8) \ - /* Currently this never happens; printf_command only uses argsize */ \ - /* of sizeof (int), sizeof (double), or sizeof (long long). */ \ - error ("MAKEVA_ARG not fully written for m88k"); \ - if (argsize <= 4) \ - rounded_argsize = 4; \ - else if (argsize <= 8) \ - rounded_argsize = 8; \ - while ((int)(&list->aligner.arg_bytes[list->argindex]) % rounded_argsize) \ - list->argindex++; \ - memcpy (&list->aligner.arg_bytes[list->argindex], argaddr, argsize); \ - list->argindex += rounded_argsize; \ - } diff --git a/gdb/config/mips/xm-makeva.h b/gdb/config/mips/xm-makeva.h index 46974e0..4e002f9 100644 --- a/gdb/config/mips/xm-makeva.h +++ b/gdb/config/mips/xm-makeva.h @@ -16,20 +16,6 @@ You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -/* Mips hosts need aligned va_list arguments. */ - -#define MAKEVA_ARG(list, argaddr, argsize) \ - { \ - int rounded_argsize; \ - if (argsize > 8) \ - /* Currently this never happens; printf_command only uses argsize */ \ - /* of sizeof (int), sizeof (double), or sizeof (long long). */ \ - error ("MAKEVA_ARG not fully written for mips"); \ - if (argsize <= 4) \ - rounded_argsize = 4; \ - else if (argsize <= 8) \ - rounded_argsize = 8; \ - list->argindex = (list->argindex + rounded_argsize - 1) & -rounded_argsize; \ - memcpy (&list->aligner.arg_bytes[list->argindex], argaddr, argsize); \ - list->argindex += argsize; \ - } +/* "makeva" is obsolete. This file can probably go away (unless someone + can think of some other host thing which is common to various mips + machines). */ diff --git a/gdb/config/pa/xm-pa.h b/gdb/config/pa/xm-pa.h index 4b12910..979609d 100644 --- a/gdb/config/pa/xm-pa.h +++ b/gdb/config/pa/xm-pa.h @@ -1,27 +1,5 @@ /* Definitions for all PA machines. */ -#define MAKEVA_START(list) \ - list->argindex = list->nargs * list->max_arg_size; - -#define MAKEVA_ARG(list, argaddr, argsize) \ - { \ - int rounded_argsize; \ - if (argsize > 8) \ - /* Currently this never happens; printf_command only uses argsize */ \ - /* of sizeof (int), sizeof (double), or sizeof (long long). */ \ - error ("MAKEVA_ARG not fully written for hp-pa"); \ - if (argsize <= 4) \ - rounded_argsize = 4; \ - else if (argsize <= 8) \ - rounded_argsize = 8; \ - list->argindex -= rounded_argsize; \ - while ((int)(&list->aligner.arg_bytes[list->argindex]) % rounded_argsize) \ - list->argindex--; \ - memcpy (&list->aligner.arg_bytes[list->argindex], argaddr, argsize); \ - } - -/* The address of the arglist is the address right after the args - (which is what you'd expect). */ -#define MAKEVA_END(list) \ - return (va_list) (list->aligner.arg_bytes \ - + list->nargs * list->max_arg_size) +/* This was created for "makeva", which is obsolete. This file can + probably go away (unless someone can think of some other host thing + which is common to various pa machines). */ |