/* Output generating routines for GDB.
- Copyright 1999, 2000, 2001 Free Software Foundation, Inc.
+
+ Copyright 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+
Contributed by Cygnus Solutions.
Written by Fernando Nasser for Cygnus.
#include "ui-out.h"
#include "gdb_assert.h"
-/* Convenience macro for allocting typesafe memory. */
-
-#undef XMALLOC
-#define XMALLOC(TYPE) (TYPE*) xmalloc (sizeof (TYPE))
-
/* table header structures */
struct ui_out_hdr
uo_field_int (uiout, fldno, width, align, fldname, value);
}
+void
+ui_out_field_fmt_int (struct ui_out *uiout,
+ int input_width,
+ enum ui_align input_align,
+ const char *fldname,
+ int value)
+{
+ int fldno;
+ int width;
+ int align;
+ struct ui_out_level *current = current_level (uiout);
+
+ verify_field (uiout, &fldno, &width, &align);
+
+ uo_field_int (uiout, fldno, input_width, input_align, fldname, value);
+}
+
void
ui_out_field_core_addr (struct ui_out *uiout,
const char *fldname,
{
char addstr[20];
- /* FIXME-32x64: need a print_address_numeric with field width */
+ /* FIXME: cagney/2002-05-03: Need local_address_string() function
+ that returns the language localized string formatted to a width
+ based on TARGET_ADDR_BIT. */
/* print_address_numeric (address, 1, local_stream); */
- strcpy (addstr, local_hex_string_custom ((unsigned long) address, "08l"));
+ if (TARGET_ADDR_BIT <= 32)
+ strcpy (addstr, local_hex_string_custom (address, "08l"));
+ else
+ strcpy (addstr, local_hex_string_custom (address, "016l"));
ui_out_field_string (uiout, fldname, addstr);
}