dbxout.c: Fix formatting.
* dbxout.c: Fix formatting. * dependence.c: Likewise. * df.c: Likewise. * diagnostic.c: Likewise. * doloop.c: Likewise. * dominance.c: Likewise. * doschk.c: Likewise. * dwarf2asm.c: Likewise. * dwarf2out.c: Likewise. * dwarfout.c: Likewise. From-SVN: r53380
This commit is contained in:
parent
c9c2cb7c99
commit
3a538a6668
11 changed files with 380 additions and 361 deletions
|
@ -1,3 +1,16 @@
|
|||
2002-05-11 Kazu Hirata <kazu@cs.umass.edu>
|
||||
|
||||
* dbxout.c: Fix formatting.
|
||||
* dependence.c: Likewise.
|
||||
* df.c: Likewise.
|
||||
* diagnostic.c: Likewise.
|
||||
* doloop.c: Likewise.
|
||||
* dominance.c: Likewise.
|
||||
* doschk.c: Likewise.
|
||||
* dwarf2asm.c: Likewise.
|
||||
* dwarf2out.c: Likewise.
|
||||
* dwarfout.c: Likewise.
|
||||
|
||||
2002-05-10 Richard Henderson <rth@redhat.com>
|
||||
|
||||
* final.c (end_final): Tidy whitespace. Don't honor flag_pack_struct.
|
||||
|
|
22
gcc/dbxout.c
22
gcc/dbxout.c
|
@ -959,7 +959,7 @@ dbxout_type_methods (type)
|
|||
}
|
||||
if (!need_prefix)
|
||||
{
|
||||
putc (';', asmfile);
|
||||
putc (';', asmfile);
|
||||
CHARS (1);
|
||||
}
|
||||
}
|
||||
|
@ -1219,7 +1219,7 @@ dbxout_type (type, full)
|
|||
write it as a subtype. */
|
||||
else if (TREE_TYPE (type) != 0
|
||||
&& TREE_CODE (TREE_TYPE (type)) == INTEGER_TYPE)
|
||||
{
|
||||
{
|
||||
/* If the size is non-standard, say what it is if we can use
|
||||
GDB extensions. */
|
||||
|
||||
|
@ -1232,10 +1232,10 @@ dbxout_type (type, full)
|
|||
}
|
||||
|
||||
dbxout_range_type (type);
|
||||
}
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
{
|
||||
/* If the size is non-standard, say what it is if we can use
|
||||
GDB extensions. */
|
||||
|
||||
|
@ -1259,7 +1259,7 @@ dbxout_type (type, full)
|
|||
larger. This is because we print the bounds as signed decimal,
|
||||
and hence they can't span same size unsigned types. */
|
||||
|
||||
if (use_gnu_debug_info_extensions
|
||||
if (use_gnu_debug_info_extensions
|
||||
&& TYPE_MIN_VALUE (type) != 0
|
||||
&& TREE_CODE (TYPE_MIN_VALUE (type)) == INTEGER_CST
|
||||
&& TYPE_MAX_VALUE (type) != 0
|
||||
|
@ -1288,7 +1288,7 @@ dbxout_type (type, full)
|
|||
else
|
||||
/* Output other integer types as subranges of `int'. */
|
||||
dbxout_range_type (type);
|
||||
}
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
|
@ -1947,7 +1947,7 @@ dbxout_symbol (decl, local)
|
|||
&& !TREE_ASM_WRITTEN (TYPE_NAME (type))
|
||||
/* Distinguish the implicit typedefs of C++
|
||||
from explicit ones that might be found in C. */
|
||||
&& DECL_ARTIFICIAL (decl)
|
||||
&& DECL_ARTIFICIAL (decl)
|
||||
/* Do not generate a tag for records of variable size,
|
||||
since this type can not be properly described in the
|
||||
DBX format, and it confuses some tools such as objdump. */
|
||||
|
@ -1979,7 +1979,7 @@ dbxout_symbol (decl, local)
|
|||
&& TYPE_NAME (type) == decl
|
||||
/* Distinguish the implicit typedefs of C++
|
||||
from explicit ones that might be found in C. */
|
||||
&& DECL_ARTIFICIAL (decl))
|
||||
&& DECL_ARTIFICIAL (decl))
|
||||
{
|
||||
if (use_gnu_debug_info_extensions && have_used_extensions)
|
||||
{
|
||||
|
@ -2517,7 +2517,7 @@ dbxout_parms (parms)
|
|||
double on the stack, but if we emit a stab saying the type is a
|
||||
float, then gdb will only read in a single value, and this will
|
||||
produce an erroneous value. */
|
||||
dbxout_type (DECL_ARG_TYPE (parms), 0);
|
||||
dbxout_type (DECL_ARG_TYPE (parms), 0);
|
||||
current_sym_value = DEBUGGER_ARG_OFFSET (current_sym_value, addr);
|
||||
dbxout_finish_symbol (parms);
|
||||
}
|
||||
|
@ -2635,8 +2635,8 @@ dbxout_parms (parms)
|
|||
const char *const decl_name = (DECL_NAME (parms)
|
||||
? IDENTIFIER_POINTER (DECL_NAME (parms))
|
||||
: "(anon)");
|
||||
if (GET_CODE (XEXP (XEXP (DECL_RTL (parms), 0), 0)) == REG)
|
||||
current_sym_value = 0;
|
||||
if (GET_CODE (XEXP (XEXP (DECL_RTL (parms), 0), 0)) == REG)
|
||||
current_sym_value = 0;
|
||||
else
|
||||
current_sym_value
|
||||
= INTVAL (XEXP (XEXP (XEXP (DECL_RTL (parms), 0), 0), 1));
|
||||
|
|
18
gcc/df.c
18
gcc/df.c
|
@ -881,7 +881,7 @@ df_ref_record (df, reg, loc, insn, ref_type, ref_flags)
|
|||
XXX Is that true? We could also use the global word_mode variable. */
|
||||
if (GET_CODE (reg) == SUBREG
|
||||
&& (GET_MODE_SIZE (GET_MODE (reg)) < GET_MODE_SIZE (word_mode)
|
||||
|| GET_MODE_SIZE (GET_MODE (reg))
|
||||
|| GET_MODE_SIZE (GET_MODE (reg))
|
||||
>= GET_MODE_SIZE (GET_MODE (SUBREG_REG (reg)))))
|
||||
{
|
||||
loc = &SUBREG_REG (reg);
|
||||
|
@ -956,7 +956,7 @@ df_def_record_1 (df, x, bb, insn)
|
|||
/* May be, we should flag the use of strict_low_part somehow. Might be
|
||||
handy for the reg allocator. */
|
||||
while (GET_CODE (dst) == STRICT_LOW_PART
|
||||
|| GET_CODE (dst) == ZERO_EXTRACT
|
||||
|| GET_CODE (dst) == ZERO_EXTRACT
|
||||
|| GET_CODE (dst) == SIGN_EXTRACT
|
||||
|| read_modify_subreg_p (dst))
|
||||
{
|
||||
|
@ -973,7 +973,7 @@ df_def_record_1 (df, x, bb, insn)
|
|||
}
|
||||
|
||||
if (GET_CODE (dst) == REG
|
||||
|| (GET_CODE (dst) == SUBREG && GET_CODE (SUBREG_REG (dst)) == REG))
|
||||
|| (GET_CODE (dst) == SUBREG && GET_CODE (SUBREG_REG (dst)) == REG))
|
||||
df_ref_record (df, dst, loc, insn, DF_REF_REG_DEF, flags);
|
||||
}
|
||||
|
||||
|
@ -1135,7 +1135,7 @@ df_uses_record (df, loc, ref_type, bb, insn, flags)
|
|||
For now, just mark any regs we can find in ASM_OPERANDS as
|
||||
used. */
|
||||
|
||||
/* For all ASM_OPERANDS, we must traverse the vector of input operands.
|
||||
/* For all ASM_OPERANDS, we must traverse the vector of input operands.
|
||||
We can not just fall through here since then we would be confused
|
||||
by the ASM_INPUT rtx inside ASM_OPERANDS, which do not indicate
|
||||
traditional asms unlike their normal usage. */
|
||||
|
@ -1253,7 +1253,7 @@ df_insn_refs_record (df, bb, insn)
|
|||
{
|
||||
x = df_reg_use_gen (i);
|
||||
df_uses_record (df, &SET_DEST (x),
|
||||
DF_REF_REG_USE, bb, insn, 0);
|
||||
DF_REF_REG_USE, bb, insn, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -3260,9 +3260,9 @@ df_chain_dump_regno (link, file)
|
|||
for (; link; link = link->next)
|
||||
{
|
||||
fprintf (file, "%c%d(%d) ",
|
||||
DF_REF_REG_DEF_P (link->ref) ? 'd' : 'u',
|
||||
DF_REF_ID (link->ref),
|
||||
DF_REF_REGNO (link->ref));
|
||||
DF_REF_REG_DEF_P (link->ref) ? 'd' : 'u',
|
||||
DF_REF_ID (link->ref),
|
||||
DF_REF_REGNO (link->ref));
|
||||
}
|
||||
fprintf (file, "}");
|
||||
}
|
||||
|
@ -3492,7 +3492,7 @@ df_insn_debug_regno (df, insn, file)
|
|||
bbi = -1;
|
||||
|
||||
fprintf (file, "insn %d bb %d luid %d defs ",
|
||||
uid, bbi, DF_INSN_LUID (df, insn));
|
||||
uid, bbi, DF_INSN_LUID (df, insn));
|
||||
df_chain_dump_regno (df->insns[uid].defs, file);
|
||||
fprintf (file, " uses ");
|
||||
df_chain_dump_regno (df->insns[uid].uses, file);
|
||||
|
|
298
gcc/diagnostic.c
298
gcc/diagnostic.c
|
@ -40,11 +40,13 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
|
|||
#define obstack_chunk_alloc xmalloc
|
||||
#define obstack_chunk_free free
|
||||
|
||||
#define output_formatted_integer(BUFFER, FORMAT, INTEGER) \
|
||||
do { \
|
||||
sprintf ((BUFFER)->digit_buffer, FORMAT, INTEGER); \
|
||||
output_add_string (BUFFER, (BUFFER)->digit_buffer); \
|
||||
} while (0)
|
||||
#define output_formatted_integer(BUFFER, FORMAT, INTEGER) \
|
||||
do \
|
||||
{ \
|
||||
sprintf ((BUFFER)->digit_buffer, FORMAT, INTEGER); \
|
||||
output_add_string (BUFFER, (BUFFER)->digit_buffer); \
|
||||
} \
|
||||
while (0)
|
||||
|
||||
#define output_text_length(BUFFER) (BUFFER)->line_length
|
||||
#define is_starting_newline(BUFFER) (output_text_length (BUFFER) == 0)
|
||||
|
@ -59,7 +61,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
|
|||
/* Prototypes. */
|
||||
static void diagnostic_finish PARAMS ((output_buffer *));
|
||||
static void output_do_verbatim PARAMS ((output_buffer *,
|
||||
const char *, va_list *));
|
||||
const char *, va_list *));
|
||||
static void output_buffer_to_stream PARAMS ((output_buffer *));
|
||||
static void output_format PARAMS ((output_buffer *));
|
||||
static void output_indent PARAMS ((output_buffer *));
|
||||
|
@ -77,22 +79,22 @@ static void set_real_maximum_length PARAMS ((output_buffer *));
|
|||
static void output_unsigned_decimal PARAMS ((output_buffer *, unsigned int));
|
||||
static void output_long_decimal PARAMS ((output_buffer *, long int));
|
||||
static void output_long_unsigned_decimal PARAMS ((output_buffer *,
|
||||
long unsigned int));
|
||||
long unsigned int));
|
||||
static void output_octal PARAMS ((output_buffer *, unsigned int));
|
||||
static void output_long_octal PARAMS ((output_buffer *, unsigned long int));
|
||||
static void output_hexadecimal PARAMS ((output_buffer *, unsigned int));
|
||||
static void output_long_hexadecimal PARAMS ((output_buffer *,
|
||||
unsigned long int));
|
||||
unsigned long int));
|
||||
static void output_append_r PARAMS ((output_buffer *, const char *, int));
|
||||
static void wrap_text PARAMS ((output_buffer *, const char *, const char *));
|
||||
static void maybe_wrap_text PARAMS ((output_buffer *, const char *,
|
||||
const char *));
|
||||
const char *));
|
||||
static void clear_diagnostic_info PARAMS ((output_buffer *));
|
||||
|
||||
static void default_diagnostic_starter PARAMS ((output_buffer *,
|
||||
diagnostic_context *));
|
||||
diagnostic_context *));
|
||||
static void default_diagnostic_finalizer PARAMS ((output_buffer *,
|
||||
diagnostic_context *));
|
||||
diagnostic_context *));
|
||||
|
||||
static void error_recursion PARAMS ((void)) ATTRIBUTE_NORETURN;
|
||||
|
||||
|
@ -203,13 +205,13 @@ set_real_maximum_length (buffer)
|
|||
else
|
||||
{
|
||||
int prefix_length =
|
||||
output_prefix (buffer) ? strlen (output_prefix (buffer)) : 0;
|
||||
output_prefix (buffer) ? strlen (output_prefix (buffer)) : 0;
|
||||
/* If the prefix is ridiculously too long, output at least
|
||||
32 characters. */
|
||||
if (output_line_cutoff (buffer) - prefix_length < 32)
|
||||
line_wrap_cutoff (buffer) = output_line_cutoff (buffer) + 32;
|
||||
line_wrap_cutoff (buffer) = output_line_cutoff (buffer) + 32;
|
||||
else
|
||||
line_wrap_cutoff (buffer) = output_line_cutoff (buffer);
|
||||
line_wrap_cutoff (buffer) = output_line_cutoff (buffer);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -352,28 +354,28 @@ output_emit_prefix (buffer)
|
|||
if (output_prefix (buffer) != NULL)
|
||||
{
|
||||
switch (output_prefixing_rule (buffer))
|
||||
{
|
||||
default:
|
||||
case DIAGNOSTICS_SHOW_PREFIX_NEVER:
|
||||
break;
|
||||
{
|
||||
default:
|
||||
case DIAGNOSTICS_SHOW_PREFIX_NEVER:
|
||||
break;
|
||||
|
||||
case DIAGNOSTICS_SHOW_PREFIX_ONCE:
|
||||
if (prefix_was_emitted_for (buffer))
|
||||
{
|
||||
output_indent (buffer);
|
||||
break;
|
||||
}
|
||||
output_indentation (buffer) += 3;
|
||||
/* Fall through. */
|
||||
case DIAGNOSTICS_SHOW_PREFIX_ONCE:
|
||||
if (prefix_was_emitted_for (buffer))
|
||||
{
|
||||
output_indent (buffer);
|
||||
break;
|
||||
}
|
||||
output_indentation (buffer) += 3;
|
||||
/* Fall through. */
|
||||
|
||||
case DIAGNOSTICS_SHOW_PREFIX_EVERY_LINE:
|
||||
{
|
||||
int prefix_length = strlen (output_prefix (buffer));
|
||||
output_append_r (buffer, output_prefix (buffer), prefix_length);
|
||||
prefix_was_emitted_for (buffer) = 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case DIAGNOSTICS_SHOW_PREFIX_EVERY_LINE:
|
||||
{
|
||||
int prefix_length = strlen (output_prefix (buffer));
|
||||
output_append_r (buffer, output_prefix (buffer), prefix_length);
|
||||
prefix_was_emitted_for (buffer) = 1;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -511,8 +513,8 @@ output_append (buffer, start, end)
|
|||
{
|
||||
output_emit_prefix (buffer);
|
||||
if (output_is_line_wrapping (buffer))
|
||||
while (start != end && *start == ' ')
|
||||
++start;
|
||||
while (start != end && *start == ' ')
|
||||
++start;
|
||||
}
|
||||
output_append_r (buffer, start, end - start);
|
||||
}
|
||||
|
@ -542,25 +544,25 @@ wrap_text (buffer, start, end)
|
|||
{
|
||||
/* Dump anything bordered by whitespaces. */
|
||||
{
|
||||
const char *p = start;
|
||||
while (p != end && *p != ' ' && *p != '\n')
|
||||
++p;
|
||||
if (is_wrapping && p - start >= output_space_left (buffer))
|
||||
output_add_newline (buffer);
|
||||
output_append (buffer, start, p);
|
||||
start = p;
|
||||
const char *p = start;
|
||||
while (p != end && *p != ' ' && *p != '\n')
|
||||
++p;
|
||||
if (is_wrapping && p - start >= output_space_left (buffer))
|
||||
output_add_newline (buffer);
|
||||
output_append (buffer, start, p);
|
||||
start = p;
|
||||
}
|
||||
|
||||
if (start != end && *start == ' ')
|
||||
{
|
||||
output_add_space (buffer);
|
||||
++start;
|
||||
}
|
||||
{
|
||||
output_add_space (buffer);
|
||||
++start;
|
||||
}
|
||||
if (start != end && *start == '\n')
|
||||
{
|
||||
output_add_newline (buffer);
|
||||
++start;
|
||||
}
|
||||
{
|
||||
output_add_newline (buffer);
|
||||
++start;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -626,110 +628,110 @@ output_format (buffer)
|
|||
|
||||
/* Ignore text. */
|
||||
{
|
||||
const char *p = output_buffer_text_cursor (buffer);
|
||||
while (*p && *p != '%')
|
||||
++p;
|
||||
wrap_text (buffer, output_buffer_text_cursor (buffer), p);
|
||||
output_buffer_text_cursor (buffer) = p;
|
||||
const char *p = output_buffer_text_cursor (buffer);
|
||||
while (*p && *p != '%')
|
||||
++p;
|
||||
wrap_text (buffer, output_buffer_text_cursor (buffer), p);
|
||||
output_buffer_text_cursor (buffer) = p;
|
||||
}
|
||||
|
||||
if (!*output_buffer_text_cursor (buffer))
|
||||
break;
|
||||
break;
|
||||
|
||||
/* We got a '%'. Let's see what happens. Record whether we're
|
||||
parsing a long integer format specifier. */
|
||||
if (*++output_buffer_text_cursor (buffer) == 'l')
|
||||
{
|
||||
long_integer = 1;
|
||||
++output_buffer_text_cursor (buffer);
|
||||
}
|
||||
{
|
||||
long_integer = 1;
|
||||
++output_buffer_text_cursor (buffer);
|
||||
}
|
||||
|
||||
/* Handle %c, %d, %i, %ld, %li, %lo, %lu, %lx, %o, %s, %u,
|
||||
%x, %.*s; %%. And nothing else. Front-ends should install
|
||||
printers to grok language specific format specifiers. */
|
||||
switch (*output_buffer_text_cursor (buffer))
|
||||
{
|
||||
case 'c':
|
||||
output_add_character
|
||||
(buffer, va_arg (output_buffer_format_args (buffer), int));
|
||||
break;
|
||||
{
|
||||
case 'c':
|
||||
output_add_character
|
||||
(buffer, va_arg (output_buffer_format_args (buffer), int));
|
||||
break;
|
||||
|
||||
case 'd':
|
||||
case 'i':
|
||||
if (long_integer)
|
||||
output_long_decimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer), long int));
|
||||
else
|
||||
output_decimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer), int));
|
||||
break;
|
||||
case 'd':
|
||||
case 'i':
|
||||
if (long_integer)
|
||||
output_long_decimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer), long int));
|
||||
else
|
||||
output_decimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer), int));
|
||||
break;
|
||||
|
||||
case 'o':
|
||||
if (long_integer)
|
||||
output_long_octal (buffer,
|
||||
va_arg (output_buffer_format_args (buffer),
|
||||
unsigned long int));
|
||||
else
|
||||
output_octal (buffer,
|
||||
va_arg (output_buffer_format_args (buffer),
|
||||
unsigned int));
|
||||
break;
|
||||
case 'o':
|
||||
if (long_integer)
|
||||
output_long_octal (buffer,
|
||||
va_arg (output_buffer_format_args (buffer),
|
||||
unsigned long int));
|
||||
else
|
||||
output_octal (buffer,
|
||||
va_arg (output_buffer_format_args (buffer),
|
||||
unsigned int));
|
||||
break;
|
||||
|
||||
case 's':
|
||||
output_add_string (buffer,
|
||||
va_arg (output_buffer_format_args (buffer),
|
||||
const char *));
|
||||
break;
|
||||
case 's':
|
||||
output_add_string (buffer,
|
||||
va_arg (output_buffer_format_args (buffer),
|
||||
const char *));
|
||||
break;
|
||||
|
||||
case 'u':
|
||||
if (long_integer)
|
||||
output_long_unsigned_decimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer),
|
||||
long unsigned int));
|
||||
else
|
||||
output_unsigned_decimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer),
|
||||
unsigned int));
|
||||
break;
|
||||
case 'u':
|
||||
if (long_integer)
|
||||
output_long_unsigned_decimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer),
|
||||
long unsigned int));
|
||||
else
|
||||
output_unsigned_decimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer),
|
||||
unsigned int));
|
||||
break;
|
||||
|
||||
case 'x':
|
||||
if (long_integer)
|
||||
output_long_hexadecimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer),
|
||||
unsigned long int));
|
||||
else
|
||||
output_hexadecimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer),
|
||||
unsigned int));
|
||||
break;
|
||||
case 'x':
|
||||
if (long_integer)
|
||||
output_long_hexadecimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer),
|
||||
unsigned long int));
|
||||
else
|
||||
output_hexadecimal
|
||||
(buffer, va_arg (output_buffer_format_args (buffer),
|
||||
unsigned int));
|
||||
break;
|
||||
|
||||
case '%':
|
||||
output_add_character (buffer, '%');
|
||||
break;
|
||||
case '%':
|
||||
output_add_character (buffer, '%');
|
||||
break;
|
||||
|
||||
case '.':
|
||||
{
|
||||
int n;
|
||||
const char *s;
|
||||
/* We handle no precision specifier but `%.*s'. */
|
||||
if (*++output_buffer_text_cursor (buffer) != '*')
|
||||
abort ();
|
||||
else if (*++output_buffer_text_cursor (buffer) != 's')
|
||||
abort ();
|
||||
n = va_arg (output_buffer_format_args (buffer), int);
|
||||
s = va_arg (output_buffer_format_args (buffer), const char *);
|
||||
output_append (buffer, s, s + n);
|
||||
}
|
||||
break;
|
||||
case '.':
|
||||
{
|
||||
int n;
|
||||
const char *s;
|
||||
/* We handle no precision specifier but `%.*s'. */
|
||||
if (*++output_buffer_text_cursor (buffer) != '*')
|
||||
abort ();
|
||||
else if (*++output_buffer_text_cursor (buffer) != 's')
|
||||
abort ();
|
||||
n = va_arg (output_buffer_format_args (buffer), int);
|
||||
s = va_arg (output_buffer_format_args (buffer), const char *);
|
||||
output_append (buffer, s, s + n);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
if (!buffer->format_decoder || !(*buffer->format_decoder) (buffer))
|
||||
{
|
||||
/* Hmmm. The front-end failed to install a format translator
|
||||
default:
|
||||
if (!buffer->format_decoder || !(*buffer->format_decoder) (buffer))
|
||||
{
|
||||
/* Hmmm. The front-end failed to install a format translator
|
||||
but called us with an unrecognized format. Sorry. */
|
||||
abort ();
|
||||
}
|
||||
}
|
||||
abort ();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -804,7 +806,7 @@ output_do_printf (buffer, msg)
|
|||
const char *msg;
|
||||
{
|
||||
char *message = vbuild_message_string (msg,
|
||||
output_buffer_format_args (buffer));
|
||||
output_buffer_format_args (buffer));
|
||||
|
||||
wrap_text (buffer, message, message + strlen (message));
|
||||
free (message);
|
||||
|
@ -1068,7 +1070,7 @@ announce_function (decl)
|
|||
if (rtl_dump_and_exit)
|
||||
verbatim ("%s ", IDENTIFIER_POINTER (DECL_NAME (decl)));
|
||||
else
|
||||
verbatim (" %s", (*lang_hooks.decl_printable_name) (decl, 2));
|
||||
verbatim (" %s", (*lang_hooks.decl_printable_name) (decl, 2));
|
||||
fflush (stderr);
|
||||
output_needs_newline (diagnostic_buffer) = 1;
|
||||
record_last_error_function ();
|
||||
|
@ -1092,17 +1094,17 @@ lhd_print_error_function (context, file)
|
|||
output_set_prefix ((output_buffer *) context, prefix);
|
||||
|
||||
if (current_function_decl == NULL)
|
||||
output_add_string ((output_buffer *) context, _("At top level:"));
|
||||
output_add_string ((output_buffer *) context, _("At top level:"));
|
||||
else
|
||||
{
|
||||
if (TREE_CODE (TREE_TYPE (current_function_decl)) == METHOD_TYPE)
|
||||
output_printf
|
||||
((output_buffer *) context, "In member function `%s':",
|
||||
(*lang_hooks.decl_printable_name) (current_function_decl, 2));
|
||||
output_printf
|
||||
((output_buffer *) context, "In member function `%s':",
|
||||
(*lang_hooks.decl_printable_name) (current_function_decl, 2));
|
||||
else
|
||||
output_printf
|
||||
((output_buffer *) context, "In function `%s':",
|
||||
(*lang_hooks.decl_printable_name) (current_function_decl, 2));
|
||||
output_printf
|
||||
((output_buffer *) context, "In function `%s':",
|
||||
(*lang_hooks.decl_printable_name) (current_function_decl, 2));
|
||||
}
|
||||
output_add_newline ((output_buffer *) context);
|
||||
|
||||
|
@ -1487,10 +1489,10 @@ report_problematic_module (buffer)
|
|||
for (p = input_file_stack->next; p; p = p->next)
|
||||
if (p == input_file_stack->next)
|
||||
output_verbatim
|
||||
(buffer, "In file included from %s:%d", p->name, p->line);
|
||||
(buffer, "In file included from %s:%d", p->name, p->line);
|
||||
else
|
||||
output_verbatim
|
||||
(buffer, ",\n from %s:%d", p->name, p->line);
|
||||
(buffer, ",\n from %s:%d", p->name, p->line);
|
||||
output_verbatim (buffer, ":\n");
|
||||
record_last_error_module ();
|
||||
}
|
||||
|
@ -1503,9 +1505,9 @@ default_diagnostic_starter (buffer, dc)
|
|||
{
|
||||
report_error_function (diagnostic_file_location (dc));
|
||||
output_set_prefix (buffer,
|
||||
context_as_prefix (diagnostic_file_location (dc),
|
||||
diagnostic_line_location (dc),
|
||||
diagnostic_is_warning (dc)));
|
||||
context_as_prefix (diagnostic_file_location (dc),
|
||||
diagnostic_line_location (dc),
|
||||
diagnostic_is_warning (dc)));
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
|
@ -263,7 +263,7 @@ doloop_valid_p (loop, jump_insn)
|
|||
|| ! onlyjump_p (jump_insn))
|
||||
{
|
||||
if (loop_dump_stream)
|
||||
fprintf (loop_dump_stream,
|
||||
fprintf (loop_dump_stream,
|
||||
"Doloop: Invalid jump at loop end.\n");
|
||||
return 0;
|
||||
}
|
||||
|
@ -801,7 +801,7 @@ doloop_optimize (loop)
|
|||
&increment, &mode))
|
||||
{
|
||||
if (loop_dump_stream)
|
||||
fprintf (loop_dump_stream,
|
||||
fprintf (loop_dump_stream,
|
||||
"Doloop: Cannot precondition loop.\n");
|
||||
return 0;
|
||||
}
|
||||
|
|
|
@ -119,17 +119,19 @@ static void idoms_to_doms PARAMS ((struct dom_info *,
|
|||
/* Helper macro for allocating and initializing an array,
|
||||
for aesthetic reasons. */
|
||||
#define init_ar(var, type, num, content) \
|
||||
do { \
|
||||
unsigned int i = 1; /* Catch content == i. */ \
|
||||
if (! (content)) \
|
||||
(var) = (type *) xcalloc ((num), sizeof (type)); \
|
||||
else \
|
||||
{ \
|
||||
(var) = (type *) xmalloc ((num) * sizeof (type)); \
|
||||
for (i = 0; i < num; i++) \
|
||||
(var)[i] = (content); \
|
||||
} \
|
||||
} while (0)
|
||||
do \
|
||||
{ \
|
||||
unsigned int i = 1; /* Catch content == i. */ \
|
||||
if (! (content)) \
|
||||
(var) = (type *) xcalloc ((num), sizeof (type)); \
|
||||
else \
|
||||
{ \
|
||||
(var) = (type *) xmalloc ((num) * sizeof (type)); \
|
||||
for (i = 0; i < num; i++) \
|
||||
(var)[i] = (content); \
|
||||
} \
|
||||
} \
|
||||
while (0)
|
||||
|
||||
/* Allocate all needed memory in a pessimistic fashion (so we round up).
|
||||
This initialises the contents of DI, which already must be allocated. */
|
||||
|
|
|
@ -344,15 +344,17 @@ static void def_cfa_1 PARAMS ((const char *,
|
|||
|
||||
#ifdef SET_ASM_OP
|
||||
#ifndef ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL
|
||||
#define ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL(FILE, SY, HI, LO) \
|
||||
do { \
|
||||
fprintf (FILE, "%s", SET_ASM_OP); \
|
||||
assemble_name (FILE, SY); \
|
||||
fputc (',', FILE); \
|
||||
assemble_name (FILE, HI); \
|
||||
fputc ('-', FILE); \
|
||||
assemble_name (FILE, LO); \
|
||||
} while (0)
|
||||
#define ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL(FILE, SY, HI, LO) \
|
||||
do \
|
||||
{ \
|
||||
fprintf (FILE, "%s", SET_ASM_OP); \
|
||||
assemble_name (FILE, SY); \
|
||||
fputc (',', FILE); \
|
||||
assemble_name (FILE, HI); \
|
||||
fputc ('-', FILE); \
|
||||
assemble_name (FILE, LO); \
|
||||
} \
|
||||
while (0)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
|
|
@ -1323,7 +1323,7 @@ is_pseudo_reg (rtl)
|
|||
rtx rtl;
|
||||
{
|
||||
return (((GET_CODE (rtl) == REG) && (REGNO (rtl) >= FIRST_PSEUDO_REGISTER))
|
||||
|| ((GET_CODE (rtl) == SUBREG)
|
||||
|| ((GET_CODE (rtl) == SUBREG)
|
||||
&& (REGNO (SUBREG_REG (rtl)) >= FIRST_PSEUDO_REGISTER)));
|
||||
}
|
||||
|
||||
|
@ -1341,7 +1341,7 @@ type_main_variant (type)
|
|||
if (TREE_CODE (type) == ARRAY_TYPE)
|
||||
{
|
||||
while (type != TYPE_MAIN_VARIANT (type))
|
||||
type = TYPE_MAIN_VARIANT (type);
|
||||
type = TYPE_MAIN_VARIANT (type);
|
||||
}
|
||||
|
||||
return type;
|
||||
|
@ -1705,7 +1705,7 @@ output_signed_leb128 (value)
|
|||
if (negative)
|
||||
value |= 0xfe000000; /* manually sign extend */
|
||||
if (((value == 0) && ((byte & 0x40) == 0))
|
||||
|| ((value == -1) && ((byte & 0x40) == 1)))
|
||||
|| ((value == -1) && ((byte & 0x40) == 1)))
|
||||
more = 0;
|
||||
else
|
||||
{
|
||||
|
@ -2839,8 +2839,8 @@ location_or_const_value_attribute (decl)
|
|||
if (rtl == NULL_RTX || is_pseudo_reg (rtl))
|
||||
{
|
||||
/* This decl represents a formal parameter which was optimized out. */
|
||||
tree declared_type = type_main_variant (TREE_TYPE (decl));
|
||||
tree passed_type = type_main_variant (DECL_ARG_TYPE (decl));
|
||||
tree declared_type = type_main_variant (TREE_TYPE (decl));
|
||||
tree passed_type = type_main_variant (DECL_ARG_TYPE (decl));
|
||||
|
||||
/* Note that DECL_INCOMING_RTL may be NULL in here, but we handle
|
||||
*all* cases where (rtl == NULL_RTX) just below. */
|
||||
|
@ -3464,10 +3464,10 @@ pure_or_virtual_attribute (func_decl)
|
|||
{
|
||||
#if 0 /* DECL_ABSTRACT_VIRTUAL_P is C++-specific. */
|
||||
if (DECL_ABSTRACT_VIRTUAL_P (func_decl))
|
||||
ASM_OUTPUT_DWARF_ATTRIBUTE (asm_out_file, AT_pure_virtual);
|
||||
ASM_OUTPUT_DWARF_ATTRIBUTE (asm_out_file, AT_pure_virtual);
|
||||
else
|
||||
#endif
|
||||
ASM_OUTPUT_DWARF_ATTRIBUTE (asm_out_file, AT_virtual);
|
||||
ASM_OUTPUT_DWARF_ATTRIBUTE (asm_out_file, AT_virtual);
|
||||
ASM_OUTPUT_DWARF_STRING_NEWLINE (asm_out_file, "");
|
||||
}
|
||||
}
|
||||
|
@ -3506,7 +3506,7 @@ name_and_src_coords_attributes (decl)
|
|||
file_index = lookup_filename (DECL_SOURCE_FILE (decl));
|
||||
ASM_OUTPUT_PUSH_SECTION (asm_out_file, DEBUG_SECTION);
|
||||
|
||||
src_coords_attribute (file_index, DECL_SOURCE_LINE (decl));
|
||||
src_coords_attribute (file_index, DECL_SOURCE_LINE (decl));
|
||||
}
|
||||
#endif /* defined(DWARF_DECL_COORDINATES) */
|
||||
}
|
||||
|
@ -4168,7 +4168,7 @@ output_compile_unit_die (arg)
|
|||
sf_names_attribute (SFNAMES_BEGIN_LABEL);
|
||||
src_info_attribute (SRCINFO_BEGIN_LABEL);
|
||||
if (debug_info_level >= DINFO_LEVEL_VERBOSE)
|
||||
mac_info_attribute (MACINFO_BEGIN_LABEL);
|
||||
mac_info_attribute (MACINFO_BEGIN_LABEL);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -5150,8 +5150,8 @@ output_decls_for_scope (stmt, depth)
|
|||
tree subblocks;
|
||||
|
||||
for (subblocks = BLOCK_SUBBLOCKS (stmt);
|
||||
subblocks;
|
||||
subblocks = BLOCK_CHAIN (subblocks))
|
||||
subblocks;
|
||||
subblocks = BLOCK_CHAIN (subblocks))
|
||||
output_block (subblocks, depth + 1);
|
||||
}
|
||||
}
|
||||
|
@ -5325,7 +5325,7 @@ output_decl (decl, containing_scope)
|
|||
|
||||
for (parm = arg_decls; parm; parm = TREE_CHAIN (parm))
|
||||
if (TREE_CODE (parm) == PARM_DECL)
|
||||
{
|
||||
{
|
||||
if (DECL_NAME(parm) &&
|
||||
!strcmp(IDENTIFIER_POINTER(DECL_NAME(parm)),
|
||||
"__builtin_va_alist") )
|
||||
|
@ -5362,13 +5362,13 @@ output_decl (decl, containing_scope)
|
|||
/* this is the prototyped case, check for ... */
|
||||
if (TREE_VALUE (tree_last (fn_arg_types)) != void_type_node)
|
||||
output_die (output_unspecified_parameters_die, decl);
|
||||
}
|
||||
else
|
||||
{
|
||||
/* this is unprototyped, check for undefined (just declaration) */
|
||||
if (!DECL_INITIAL (decl))
|
||||
output_die (output_unspecified_parameters_die, decl);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
/* this is unprototyped, check for undefined (just declaration) */
|
||||
if (!DECL_INITIAL (decl))
|
||||
output_die (output_unspecified_parameters_die, decl);
|
||||
}
|
||||
}
|
||||
|
||||
/* Output Dwarf info for all of the stuff within the body of the
|
||||
|
@ -5427,7 +5427,7 @@ output_decl (decl, containing_scope)
|
|||
if (debug_info_level <= DINFO_LEVEL_TERSE)
|
||||
if (! TYPE_DECL_IS_STUB (decl)
|
||||
|| (! TYPE_USED_FOR_FUNCTION (TREE_TYPE (decl)) && ! in_class))
|
||||
return;
|
||||
return;
|
||||
|
||||
/* In the special case of a TYPE_DECL node representing
|
||||
the declaration of some type tag, if the given TYPE_DECL is
|
||||
|
@ -5468,7 +5468,7 @@ output_decl (decl, containing_scope)
|
|||
any variable declarations or definitions. */
|
||||
|
||||
if (debug_info_level <= DINFO_LEVEL_TERSE)
|
||||
break;
|
||||
break;
|
||||
|
||||
/* Output any DIEs that are needed to specify the type of this data
|
||||
object. */
|
||||
|
@ -5502,7 +5502,7 @@ output_decl (decl, containing_scope)
|
|||
function. */
|
||||
|
||||
{
|
||||
void (*func) PARAMS ((void *));
|
||||
void (*func) PARAMS ((void *));
|
||||
register tree origin = decl_ultimate_origin (decl);
|
||||
|
||||
if (origin != NULL && TREE_CODE (origin) == PARM_DECL)
|
||||
|
@ -5523,7 +5523,7 @@ output_decl (decl, containing_scope)
|
|||
if (DECL_NAME (decl) != 0)
|
||||
{
|
||||
output_type (member_declared_type (decl), containing_scope);
|
||||
output_die (output_member_die, decl);
|
||||
output_die (output_member_die, decl);
|
||||
}
|
||||
break;
|
||||
|
||||
|
@ -5623,7 +5623,7 @@ dwarfout_file_scope_decl (decl, set_finalizing)
|
|||
these same functions should NOT be ignored however. */
|
||||
|
||||
if (DECL_EXTERNAL (decl) && DECL_FUNCTION_CODE (decl))
|
||||
return;
|
||||
return;
|
||||
|
||||
/* What we would really like to do here is to filter out all mere
|
||||
file-scope declarations of file-scope functions which are never
|
||||
|
@ -5733,7 +5733,7 @@ dwarfout_file_scope_decl (decl, set_finalizing)
|
|||
any variable declarations or definitions. */
|
||||
|
||||
if (debug_info_level <= DINFO_LEVEL_TERSE)
|
||||
return;
|
||||
return;
|
||||
|
||||
break;
|
||||
|
||||
|
@ -5771,7 +5771,7 @@ dwarfout_file_scope_decl (decl, set_finalizing)
|
|||
if (debug_info_level <= DINFO_LEVEL_TERSE)
|
||||
if (! TYPE_DECL_IS_STUB (decl)
|
||||
|| ! TYPE_USED_FOR_FUNCTION (TREE_TYPE (decl)))
|
||||
return;
|
||||
return;
|
||||
|
||||
break;
|
||||
|
||||
|
@ -5930,9 +5930,9 @@ generate_new_sfname_entry ()
|
|||
sprintf (label, SFNAMES_ENTRY_LABEL_FMT, filename_table[0].number);
|
||||
ASM_OUTPUT_LABEL (asm_out_file, label);
|
||||
ASM_OUTPUT_DWARF_STRING_NEWLINE (asm_out_file,
|
||||
filename_table[0].name
|
||||
? filename_table[0].name
|
||||
: "");
|
||||
filename_table[0].name
|
||||
? filename_table[0].name
|
||||
: "");
|
||||
ASM_OUTPUT_POP_SECTION (asm_out_file);
|
||||
}
|
||||
|
||||
|
@ -5984,7 +5984,7 @@ lookup_filename (file_name)
|
|||
same filename will find it as quickly as possible. */
|
||||
|
||||
shuffle_filename_entry (search_p);
|
||||
return filename_table[0].number;
|
||||
return filename_table[0].number;
|
||||
}
|
||||
|
||||
/* We come here whenever we have a new filename which is not registered
|
||||
|
@ -6062,18 +6062,18 @@ dwarfout_source_line (line, filename)
|
|||
|
||||
ASM_OUTPUT_PUSH_SECTION (asm_out_file, LINE_SECTION);
|
||||
if (this_file_entry_num != prev_file_entry_num)
|
||||
{
|
||||
char line_entry_label[MAX_ARTIFICIAL_LABEL_BYTES];
|
||||
{
|
||||
char line_entry_label[MAX_ARTIFICIAL_LABEL_BYTES];
|
||||
|
||||
sprintf (line_entry_label, LINE_ENTRY_LABEL_FMT, last_line_entry_num);
|
||||
ASM_OUTPUT_LABEL (asm_out_file, line_entry_label);
|
||||
}
|
||||
sprintf (line_entry_label, LINE_ENTRY_LABEL_FMT, last_line_entry_num);
|
||||
ASM_OUTPUT_LABEL (asm_out_file, line_entry_label);
|
||||
}
|
||||
|
||||
{
|
||||
const char *tail = strrchr (filename, '/');
|
||||
const char *tail = strrchr (filename, '/');
|
||||
|
||||
if (tail != NULL)
|
||||
filename = tail;
|
||||
if (tail != NULL)
|
||||
filename = tail;
|
||||
}
|
||||
|
||||
dw2_asm_output_data (4, line, "%s:%u", filename, line);
|
||||
|
@ -6082,7 +6082,7 @@ dwarfout_source_line (line, filename)
|
|||
ASM_OUTPUT_POP_SECTION (asm_out_file);
|
||||
|
||||
if (this_file_entry_num != prev_file_entry_num)
|
||||
generate_srcinfo_entry (last_line_entry_num, this_file_entry_num);
|
||||
generate_srcinfo_entry (last_line_entry_num, this_file_entry_num);
|
||||
prev_file_entry_num = this_file_entry_num;
|
||||
}
|
||||
}
|
||||
|
@ -6296,14 +6296,14 @@ dwarfout_init (main_input_filename)
|
|||
if (debug_info_level >= DINFO_LEVEL_VERBOSE
|
||||
&& use_gnu_debug_info_extensions)
|
||||
{
|
||||
/* Output a starting label for the .debug_macinfo section. This
|
||||
/* Output a starting label for the .debug_macinfo section. This
|
||||
label will be referenced by the AT_mac_info attribute in the
|
||||
TAG_compile_unit DIE. */
|
||||
|
||||
fputc ('\n', asm_out_file);
|
||||
ASM_OUTPUT_PUSH_SECTION (asm_out_file, DEBUG_MACINFO_SECTION);
|
||||
ASM_OUTPUT_LABEL (asm_out_file, MACINFO_BEGIN_LABEL);
|
||||
ASM_OUTPUT_POP_SECTION (asm_out_file);
|
||||
fputc ('\n', asm_out_file);
|
||||
ASM_OUTPUT_PUSH_SECTION (asm_out_file, DEBUG_MACINFO_SECTION);
|
||||
ASM_OUTPUT_LABEL (asm_out_file, MACINFO_BEGIN_LABEL);
|
||||
ASM_OUTPUT_POP_SECTION (asm_out_file);
|
||||
}
|
||||
|
||||
/* Generate the initial entry for the .line section. */
|
||||
|
|
Loading…
Add table
Reference in a new issue