c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>.
d * c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add prototype for `handle_sysv_pragma', and make it static. Add parentheses around assignment used as truth value. * combine.c (combine_instructions): Protect variable `prev' with macro HAVE_cc0. (can_combine_p): Protect variable `link' with AUTO_INC_DEC. (extract_left_shift): Add parentheses around operand of &. (merge_outer_ops): Avoid an empty body in an else-statement. (gen_rtx_combine): Remove unused variable `i'. * sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of function monstartup `void'. Likewise for internal_mcount. Add `static void' prototype for moncontrol. Reconcile sprintf format vs. args. * sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>. Make return type of function_arg_slotno explicitly `int'. (reg_unused_after): Add parentheses around assignment used as truth value. (save_regs): Add explicit braces to avoid ambiguous `else'. (function_arg_slotno): Add parentheses around && within ||. (function_arg_pass_by_reference): Likewise. (sparc_flat_output_function_prologue): Reconcile fprintf format vs. args. * svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around assignment used as truth value. * cplus-dem.c: Include <stdlib.h>. (demangle_signature): Avoid an empty body in an else-statement. (do_type): Remove unused variable `lvl'. * cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS. Include <string.h>/<strings.h>. (cpp_lex): Remove unused variable `namelen'. (cpp_lex): Explicitly declare `num_chars' as an int. * cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include <unistd.h> instead. Explicitly declare is_system_include returning int. (make_assertion): Remove unused variable `kt'. (cpp_expand_to_buffer): Hide variable `obuf'. (output_line_command): Remove unused variables, `line_end', `line_cmd_buf' and `len'. (macarg): Remove unused variable `arg_start'. (special_symbol): Remove unused variable `i'. Add parentheses around assignment used as truth value. (do_include): Remove unused variables `pcfname' and `retried', hide `pcf' and `pcfbuflimit'. (do_line): Remove unused variable `i'. (finclude): Hide variable `missing_newline'. (cpp_handle_options): Remove unused variable `j'. (read_token_list): Remove unused variable `eofp'. (cpp_error_with_line): Remove unused variable `i'. (cpp_warning_with_line): Likewise. (cpp_pedwarn_with_line): Explicitly declare `column' as int. (cpp_error_from_errno): Remove unused variable `i'. * cse.c (invalidate): Add parentheses around assignment used as truth value. (find_best_addr): Move declaration of variable `our_cost' inside the conditional macro where its used. (fold_rtx): Avoid an empty body in an if-statement. (cse_insn): Wrap variables `this_insn_cc0_mode' and `this_insn_cc0' in macro HAVE_cc0. * dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>. (ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's. (output_uleb128): Likewise. (output_sleb128): Likewise. (output_cfi): Likewise. (output_call_frame_info): Remove unused variables `j', `fde_size' and `fde_pad'. (comp_unit_has_inlines): Hide declaration as per rest of file. (size_of_line_prolog): Correct typo in prototype. (add_arange): Likewise. (output_aranges): Likewise. (add_name_and_src_coords_attributes): Likewise. (gen_array_type_die): Likewise. (gen_inlined_subroutine_die): Likewise. (equate_decl_number_to_die): Remove unused variable `i'. (print_die): Reconcile format vs. args in fprintf's. (print_dwarf_line_table): Likewise. (output_die): Likewise. (output_line_info): Likewise. (add_subscript_info): Avoid an empty body in an else-statement. (gen_subprogram_die): Remove unused variable `fp_loc'. * dwarfout.c: Explicitly declare `next_pubname_number' as int. Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE macro. Protect `src_coords_attribute' prototype with DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die' prototype as in the rest of the file. Likewise for `output_pointer_type_die' and `output_reference_type_die'. Remove prototype for `type_of_for_scope'. (output_unsigned_leb128): Reconcile format vs. args in fprintf. (type_attribute): Add explicit braces to avoid ambiguous `else'. * final.c: Include <stdlib.h> and <string.h>/<strings.h>. (shorten_branches): Protect declaration of tmp_length with SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros. (profile_function): Protect declaration of `sval' and `cxt' variables with appropriate macros. (final_scan_insn): Likewise for `note' variable. Add explicit braces to avoid empty body in an if-statement. (output_asm_insn): Move variable `i' inside macro conditional where it is used. Add parentheses around assignment used as truth value. (asm_fprintf) Likewise, likewise. * fix-header.c (main): Remove unused variable `done'. Protect declaration of `i' with FIXPROTO_IGNORE_LIST. * pexecute.c: Include <unistd.h>. Prototype `my_strerror'. * print-rtl.c (print_inline_rtx): Explicitly declare the parameter `ind'. * profile.c: Include <string.h>/<strings.h>. (instrument_arcs): Remove unused variables `note', `inverted', `zero' and `neg_one'. (branch_prob): Avoid empty body in an if-statement. * regclass.c: Include <stdlib.h>. (reg_alternate_class): Explicitly declare parameter `regno'. * regmove.c (regmove_optimize): Remove unused variable `p'. Add parentheses around assignment used as truth value. (find_matches): Remove unused variables `output_operand' and `matching_operand'. (fixup_match_1): Remove statement with no effect: "if (0) ;". * scan.c (sstring_append): Explicitly declare `count' as int. (scan_string): Explicitly declare parameter `init' as int. * sched.c: Include <stdlib.h>. (BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |. (rank_for_schedule): Add parentheses around assignment used as truth value. (schedule_block): Likewise. (regno_use_in): Likewise. (schedule_insns): Remove unused variable `i'. * toplev.c: Include <stdlib.h> and <string.h>/<strings.h>. (v_message_with_decl): Remove unused variable `n'. (botch): Explicitly declare parameter `s' as char *. (main): Add parentheses around assignment used as truth value. * tree.c (make_node): Protect the variable `kind' with the GATHER_STATISTICS macro. (real_value_from_int_cst): Move variable `e' inside conditional macro area where it is used. (tree_last): Add parentheses around assignment used as truth value. (build1): Protect the variable `kind' with the GATHER_STATISTICS macro. (print_obstack_statistics): Reconcile format vs. args in fprintf. Protect variables `i', `total_nodes', and `total_bytes' with the GATHER_STATISTICS macro. Lots more -W -Wall warnings disappear. From-SVN: r17518
This commit is contained in:
parent
9870475ca0
commit
5e9defae4f
8 changed files with 280 additions and 78 deletions
162
gcc/ChangeLog
162
gcc/ChangeLog
|
@ -1,3 +1,165 @@
|
|||
Tue Jan 27 23:11:11 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
|
||||
prototype for `handle_sysv_pragma', and make it static. Add
|
||||
parentheses around assignment used as truth value.
|
||||
|
||||
* combine.c (combine_instructions): Protect variable `prev' with
|
||||
macro HAVE_cc0.
|
||||
(can_combine_p): Protect variable `link' with AUTO_INC_DEC.
|
||||
(extract_left_shift): Add parentheses around operand of &.
|
||||
(merge_outer_ops): Avoid an empty body in an else-statement.
|
||||
(gen_rtx_combine): Remove unused variable `i'.
|
||||
|
||||
* sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
|
||||
function monstartup `void'. Likewise for internal_mcount. Add
|
||||
`static void' prototype for moncontrol. Reconcile sprintf format
|
||||
vs. args.
|
||||
|
||||
* sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
|
||||
Make return type of function_arg_slotno explicitly `int'.
|
||||
(reg_unused_after): Add parentheses around assignment used as
|
||||
truth value.
|
||||
(save_regs): Add explicit braces to avoid ambiguous `else'.
|
||||
(function_arg_slotno): Add parentheses around && within ||.
|
||||
(function_arg_pass_by_reference): Likewise.
|
||||
(sparc_flat_output_function_prologue): Reconcile fprintf format
|
||||
vs. args.
|
||||
|
||||
* svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
|
||||
assignment used as truth value.
|
||||
|
||||
* cplus-dem.c: Include <stdlib.h>.
|
||||
(demangle_signature): Avoid an empty body in an else-statement.
|
||||
(do_type): Remove unused variable `lvl'.
|
||||
|
||||
* cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
|
||||
Include <string.h>/<strings.h>.
|
||||
(cpp_lex): Remove unused variable `namelen'.
|
||||
(cpp_lex): Explicitly declare `num_chars' as an int.
|
||||
|
||||
* cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
|
||||
<unistd.h> instead. Explicitly declare is_system_include
|
||||
returning int.
|
||||
(make_assertion): Remove unused variable `kt'.
|
||||
(cpp_expand_to_buffer): Hide variable `obuf'.
|
||||
(output_line_command): Remove unused variables, `line_end',
|
||||
`line_cmd_buf' and `len'.
|
||||
(macarg): Remove unused variable `arg_start'.
|
||||
(special_symbol): Remove unused variable `i'. Add parentheses
|
||||
around assignment used as truth value.
|
||||
(do_include): Remove unused variables `pcfname' and `retried',
|
||||
hide `pcf' and `pcfbuflimit'.
|
||||
(do_line): Remove unused variable `i'.
|
||||
(finclude): Hide variable `missing_newline'.
|
||||
(cpp_handle_options): Remove unused variable `j'.
|
||||
(read_token_list): Remove unused variable `eofp'.
|
||||
(cpp_error_with_line): Remove unused variable `i'.
|
||||
(cpp_warning_with_line): Likewise.
|
||||
(cpp_pedwarn_with_line): Explicitly declare `column' as int.
|
||||
(cpp_error_from_errno): Remove unused variable `i'.
|
||||
|
||||
* cse.c (invalidate): Add parentheses around assignment used as
|
||||
truth value.
|
||||
(find_best_addr): Move declaration of variable `our_cost' inside
|
||||
the conditional macro where its used.
|
||||
(fold_rtx): Avoid an empty body in an if-statement.
|
||||
(cse_insn): Wrap variables `this_insn_cc0_mode' and
|
||||
`this_insn_cc0' in macro HAVE_cc0.
|
||||
|
||||
* dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
|
||||
(ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
|
||||
(output_uleb128): Likewise.
|
||||
(output_sleb128): Likewise.
|
||||
(output_cfi): Likewise.
|
||||
(output_call_frame_info): Remove unused variables `j', `fde_size'
|
||||
and `fde_pad'.
|
||||
(comp_unit_has_inlines): Hide declaration as per rest of file.
|
||||
(size_of_line_prolog): Correct typo in prototype.
|
||||
(add_arange): Likewise.
|
||||
(output_aranges): Likewise.
|
||||
(add_name_and_src_coords_attributes): Likewise.
|
||||
(gen_array_type_die): Likewise.
|
||||
(gen_inlined_subroutine_die): Likewise.
|
||||
(equate_decl_number_to_die): Remove unused variable `i'.
|
||||
(print_die): Reconcile format vs. args in fprintf's.
|
||||
(print_dwarf_line_table): Likewise.
|
||||
(output_die): Likewise.
|
||||
(output_line_info): Likewise.
|
||||
(add_subscript_info): Avoid an empty body in an else-statement.
|
||||
(gen_subprogram_die): Remove unused variable `fp_loc'.
|
||||
|
||||
* dwarfout.c: Explicitly declare `next_pubname_number' as int.
|
||||
Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
|
||||
macro. Protect `src_coords_attribute' prototype with
|
||||
DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
|
||||
prototype as in the rest of the file. Likewise for
|
||||
`output_pointer_type_die' and `output_reference_type_die'. Remove
|
||||
prototype for `type_of_for_scope'.
|
||||
(output_unsigned_leb128): Reconcile format vs. args in fprintf.
|
||||
(type_attribute): Add explicit braces to avoid ambiguous `else'.
|
||||
|
||||
* final.c: Include <stdlib.h> and <string.h>/<strings.h>.
|
||||
(shorten_branches): Protect declaration of tmp_length with
|
||||
SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
|
||||
(profile_function): Protect declaration of `sval' and `cxt'
|
||||
variables with appropriate macros.
|
||||
(final_scan_insn): Likewise for `note' variable. Add explicit
|
||||
braces to avoid empty body in an if-statement.
|
||||
(output_asm_insn): Move variable `i' inside macro conditional
|
||||
where it is used. Add parentheses around assignment used as truth
|
||||
value.
|
||||
(asm_fprintf) Likewise, likewise.
|
||||
|
||||
* fix-header.c (main): Remove unused variable `done'. Protect
|
||||
declaration of `i' with FIXPROTO_IGNORE_LIST.
|
||||
|
||||
* pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
|
||||
|
||||
* print-rtl.c (print_inline_rtx): Explicitly declare the parameter
|
||||
`ind'.
|
||||
|
||||
* profile.c: Include <string.h>/<strings.h>.
|
||||
(instrument_arcs): Remove unused variables `note', `inverted',
|
||||
`zero' and `neg_one'.
|
||||
(branch_prob): Avoid empty body in an if-statement.
|
||||
|
||||
* regclass.c: Include <stdlib.h>.
|
||||
(reg_alternate_class): Explicitly declare parameter `regno'.
|
||||
|
||||
* regmove.c (regmove_optimize): Remove unused variable `p'. Add
|
||||
parentheses around assignment used as truth value.
|
||||
(find_matches): Remove unused variables `output_operand' and
|
||||
`matching_operand'.
|
||||
(fixup_match_1): Remove statement with no effect: "if (0) ;".
|
||||
|
||||
* scan.c (sstring_append): Explicitly declare `count' as int.
|
||||
(scan_string): Explicitly declare parameter `init' as int.
|
||||
|
||||
* sched.c: Include <stdlib.h>.
|
||||
(BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
|
||||
(rank_for_schedule): Add parentheses around assignment used as
|
||||
truth value.
|
||||
(schedule_block): Likewise.
|
||||
(regno_use_in): Likewise.
|
||||
(schedule_insns): Remove unused variable `i'.
|
||||
|
||||
* toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
|
||||
(v_message_with_decl): Remove unused variable `n'.
|
||||
(botch): Explicitly declare parameter `s' as char *.
|
||||
(main): Add parentheses around assignment used as truth value.
|
||||
|
||||
* tree.c (make_node): Protect the variable `kind' with the
|
||||
GATHER_STATISTICS macro.
|
||||
(real_value_from_int_cst): Move variable `e' inside conditional
|
||||
macro area where it is used.
|
||||
(tree_last): Add parentheses around assignment used as truth value.
|
||||
(build1): Protect the variable `kind' with the GATHER_STATISTICS
|
||||
macro.
|
||||
(print_obstack_statistics): Reconcile format vs. args in fprintf.
|
||||
Protect variables `i', `total_nodes', and `total_bytes' with the
|
||||
GATHER_STATISTICS macro.
|
||||
|
||||
Tue Jan 27 23:01:55 1998 Mike Stump (mrs@wrs.com)
|
||||
|
||||
* m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Add
|
||||
|
|
|
@ -23,6 +23,16 @@ Boston, MA 02111-1307, USA. */
|
|||
|
||||
#include "config.h"
|
||||
#include <stdio.h>
|
||||
#ifdef HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
#ifdef HAVE_STRING_H
|
||||
#include <string.h>
|
||||
#else
|
||||
#ifdef HAVE_STRINGS_H
|
||||
#include <strings.h>
|
||||
#endif
|
||||
#endif
|
||||
#include "tree.h"
|
||||
#include "rtl.h"
|
||||
#include "regs.h"
|
||||
|
@ -107,7 +117,7 @@ static int save_regs PROTO((FILE *, int, int, char *,
|
|||
int, int, int));
|
||||
static int restore_regs PROTO((FILE *, int, int, char *, int, int));
|
||||
static void build_big_number PROTO((FILE *, int, char *));
|
||||
static function_arg_slotno PROTO((const CUMULATIVE_ARGS *,
|
||||
static int function_arg_slotno PROTO((const CUMULATIVE_ARGS *,
|
||||
enum machine_mode, tree, int, int,
|
||||
int *, int *));
|
||||
|
||||
|
@ -1307,7 +1317,7 @@ reg_unused_after (reg, insn)
|
|||
{
|
||||
enum rtx_code code, prev_code = UNKNOWN;
|
||||
|
||||
while (insn = NEXT_INSN (insn))
|
||||
while ((insn = NEXT_INSN (insn)))
|
||||
{
|
||||
if (prev_code == CALL_INSN && call_used_regs[REGNO (reg)])
|
||||
return 1;
|
||||
|
@ -3135,33 +3145,38 @@ save_regs (file, low, high, base, offset, n_regs, real_offset)
|
|||
for (i = low; i < high; i += 2)
|
||||
{
|
||||
if (regs_ever_live[i] && ! call_used_regs[i])
|
||||
if (regs_ever_live[i+1] && ! call_used_regs[i+1])
|
||||
{
|
||||
fprintf (file, "\tstd %s,[%s+%d]\n",
|
||||
reg_names[i], base, offset + 4 * n_regs);
|
||||
if (dwarf2out_do_frame ())
|
||||
{
|
||||
char *l = dwarf2out_cfi_label ();
|
||||
dwarf2out_reg_save (l, i, real_offset + 4 * n_regs);
|
||||
dwarf2out_reg_save (l, i+1, real_offset + 4 * n_regs + 4);
|
||||
}
|
||||
n_regs += 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
fprintf (file, "\tst %s,[%s+%d]\n",
|
||||
reg_names[i], base, offset + 4 * n_regs);
|
||||
if (dwarf2out_do_frame ())
|
||||
dwarf2out_reg_save ("", i, real_offset + 4 * n_regs);
|
||||
n_regs += 2;
|
||||
}
|
||||
else if (regs_ever_live[i+1] && ! call_used_regs[i+1])
|
||||
{
|
||||
fprintf (file, "\tst %s,[%s+%d]\n",
|
||||
reg_names[i+1], base, offset + 4 * n_regs + 4);
|
||||
if (dwarf2out_do_frame ())
|
||||
dwarf2out_reg_save ("", i + 1, real_offset + 4 * n_regs + 4);
|
||||
n_regs += 2;
|
||||
if (regs_ever_live[i+1] && ! call_used_regs[i+1])
|
||||
{
|
||||
fprintf (file, "\tstd %s,[%s+%d]\n",
|
||||
reg_names[i], base, offset + 4 * n_regs);
|
||||
if (dwarf2out_do_frame ())
|
||||
{
|
||||
char *l = dwarf2out_cfi_label ();
|
||||
dwarf2out_reg_save (l, i, real_offset + 4 * n_regs);
|
||||
dwarf2out_reg_save (l, i+1, real_offset + 4 * n_regs + 4);
|
||||
}
|
||||
n_regs += 2;
|
||||
}
|
||||
else
|
||||
{
|
||||
fprintf (file, "\tst %s,[%s+%d]\n",
|
||||
reg_names[i], base, offset + 4 * n_regs);
|
||||
if (dwarf2out_do_frame ())
|
||||
dwarf2out_reg_save ("", i, real_offset + 4 * n_regs);
|
||||
n_regs += 2;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (regs_ever_live[i+1] && ! call_used_regs[i+1])
|
||||
{
|
||||
fprintf (file, "\tst %s,[%s+%d]\n",
|
||||
reg_names[i+1], base, offset + 4 * n_regs + 4);
|
||||
if (dwarf2out_do_frame ())
|
||||
dwarf2out_reg_save ("", i + 1, real_offset + 4 * n_regs + 4);
|
||||
n_regs += 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -3746,7 +3761,7 @@ function_arg_slotno (cum, mode, type, named, incoming_p, pregno, ppadding)
|
|||
}
|
||||
|
||||
if (TARGET_ARCH32
|
||||
|| type && TREE_CODE (type) == UNION_TYPE)
|
||||
|| (type && TREE_CODE (type) == UNION_TYPE))
|
||||
{
|
||||
if (slotno >= SPARC_INT_ARG_MAX)
|
||||
return -1;
|
||||
|
@ -4145,7 +4160,7 @@ function_arg_pass_by_reference (cum, mode, type, named)
|
|||
{
|
||||
if (TARGET_ARCH32)
|
||||
{
|
||||
return (type && AGGREGATE_TYPE_P (type)
|
||||
return ((type && AGGREGATE_TYPE_P (type))
|
||||
|| mode == TFmode || mode == TCmode);
|
||||
}
|
||||
else
|
||||
|
@ -5585,7 +5600,7 @@ sparc_flat_output_function_prologue (file, size)
|
|||
|
||||
/* This is only for the human reader. */
|
||||
fprintf (file, "\t%s#PROLOGUE# 0\n", ASM_COMMENT_START);
|
||||
fprintf (file, "\t%s# vars= %d, regs= %d/%d, args= %d, extra= %d\n",
|
||||
fprintf (file, "\t%s# vars= %ld, regs= %d/%d, args= %d, extra= %ld\n",
|
||||
ASM_COMMENT_START,
|
||||
current_frame_info.var_size,
|
||||
current_frame_info.gp_reg_size / 4,
|
||||
|
|
34
gcc/cpplib.c
34
gcc/cpplib.c
|
@ -59,8 +59,8 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
|
|||
# include <limits.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_STDLIB_H
|
||||
# include <stdlib.h>
|
||||
#ifdef HAVE_UNISTD_H
|
||||
# include <unistd.h>
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_STRING_H
|
||||
|
@ -271,7 +271,7 @@ extern void fancy_abort ();
|
|||
#endif
|
||||
static int lookup_import ();
|
||||
static int redundant_include_p ();
|
||||
static is_system_include ();
|
||||
static int is_system_include ();
|
||||
static struct file_name_map *read_name_map ();
|
||||
static char *read_filename_string ();
|
||||
static int open_include_file ();
|
||||
|
@ -615,7 +615,6 @@ make_assertion (pfile, option, str)
|
|||
char *option;
|
||||
U_CHAR *str;
|
||||
{
|
||||
struct directive *kt;
|
||||
U_CHAR *buf, *p, *q;
|
||||
|
||||
/* Copy the entire option so we can modify it. */
|
||||
|
@ -1946,7 +1945,9 @@ cpp_expand_to_buffer (pfile, buf, length)
|
|||
int length;
|
||||
{
|
||||
register cpp_buffer *ip;
|
||||
#if 0
|
||||
cpp_buffer obuf;
|
||||
#endif
|
||||
U_CHAR *limit = buf + length;
|
||||
U_CHAR *buf1;
|
||||
#if 0
|
||||
|
@ -2087,8 +2088,6 @@ output_line_command (pfile, conditional, file_change)
|
|||
int conditional;
|
||||
enum file_change_code file_change;
|
||||
{
|
||||
int len;
|
||||
char *line_cmd_buf, *line_end;
|
||||
long line, col;
|
||||
cpp_buffer *ip = CPP_BUFFER (pfile);
|
||||
|
||||
|
@ -2180,7 +2179,6 @@ macarg (pfile, rest_args)
|
|||
{
|
||||
int paren = 0;
|
||||
enum cpp_token token;
|
||||
long arg_start = CPP_WRITTEN (pfile);
|
||||
char save_put_out_comments = CPP_OPTIONS (pfile)->put_out_comments;
|
||||
CPP_OPTIONS (pfile)->put_out_comments = 0;
|
||||
|
||||
|
@ -2298,7 +2296,7 @@ special_symbol (hp, pfile)
|
|||
cpp_reader *pfile;
|
||||
{
|
||||
char *buf;
|
||||
int i, len;
|
||||
int len;
|
||||
int true_indepth;
|
||||
cpp_buffer *ip = NULL;
|
||||
struct tm *timebuf;
|
||||
|
@ -2438,7 +2436,7 @@ special_symbol (hp, pfile)
|
|||
goto oops;
|
||||
if (ip->cur[0] == 'L' && (ip->cur[1] == '\'' || ip->cur[1] == '"'))
|
||||
goto oops;
|
||||
if (hp = cpp_lookup (pfile, ip->cur, -1, -1))
|
||||
if ((hp = cpp_lookup (pfile, ip->cur, -1, -1)))
|
||||
{
|
||||
#if 0
|
||||
if (pcp_outfile && pcp_inside_if
|
||||
|
@ -3105,7 +3103,6 @@ do_include (pfile, keyword, unused1, unused2)
|
|||
int skip_dirs = (keyword->type == T_INCLUDE_NEXT);
|
||||
char *fname; /* Dynamically allocated fname buffer */
|
||||
char *pcftry;
|
||||
char *pcfname;
|
||||
U_CHAR *fbeg, *fend; /* Beginning and end of fname */
|
||||
enum cpp_token token;
|
||||
|
||||
|
@ -3119,12 +3116,12 @@ do_include (pfile, keyword, unused1, unused2)
|
|||
|
||||
int f; /* file number */
|
||||
|
||||
int retried = 0; /* Have already tried macro
|
||||
expanding the include line */
|
||||
int angle_brackets = 0; /* 0 for "...", 1 for <...> */
|
||||
int pcf = -1;
|
||||
char *pcfbuf;
|
||||
#if 0
|
||||
int pcf = -1;
|
||||
char *pcfbuflimit;
|
||||
#endif
|
||||
int pcfnum;
|
||||
f= -1; /* JF we iz paranoid! */
|
||||
|
||||
|
@ -3730,7 +3727,6 @@ do_line (pfile, keyword)
|
|||
long old_written = CPP_WRITTEN (pfile);
|
||||
enum file_change_code file_change = same_file;
|
||||
enum cpp_token token;
|
||||
int i;
|
||||
|
||||
token = get_directive_token (pfile);
|
||||
|
||||
|
@ -5602,7 +5598,9 @@ finclude (pfile, f, fname, system_header_p, dirptr)
|
|||
long i;
|
||||
int length;
|
||||
cpp_buffer *fp; /* For input stack frame */
|
||||
#if 0
|
||||
int missing_newline = 0;
|
||||
#endif
|
||||
|
||||
if (fstat (f, &st) < 0)
|
||||
{
|
||||
|
@ -6657,7 +6655,6 @@ cpp_handle_options (pfile, argc, argv)
|
|||
Let's include also any that were specified earlier
|
||||
on the command line. That way we can get rid of any
|
||||
that were passed automatically in from GCC. */
|
||||
int j;
|
||||
opts->inhibit_predefs = 1;
|
||||
for (ptr = &opts->pending; *ptr != NULL; )
|
||||
{
|
||||
|
@ -7136,7 +7133,7 @@ read_token_list (pfile, error_flag)
|
|||
{
|
||||
struct arglist *temp;
|
||||
long name_written = CPP_WRITTEN (pfile);
|
||||
int eofp = 0; int c;
|
||||
int c;
|
||||
|
||||
cpp_skip_hspace (pfile);
|
||||
|
||||
|
@ -7419,7 +7416,6 @@ cpp_error_with_line (pfile, line, column, msg, arg1, arg2, arg3)
|
|||
char *msg;
|
||||
char *arg1, *arg2, *arg3;
|
||||
{
|
||||
int i;
|
||||
cpp_buffer *ip = cpp_file_buffer (pfile);
|
||||
|
||||
cpp_print_containing_files (pfile);
|
||||
|
@ -7437,7 +7433,6 @@ cpp_warning_with_line (pfile, line, column, msg, arg1, arg2, arg3)
|
|||
char *msg;
|
||||
char *arg1, *arg2, *arg3;
|
||||
{
|
||||
int i;
|
||||
cpp_buffer *ip;
|
||||
|
||||
if (CPP_OPTIONS (pfile)->inhibit_warnings)
|
||||
|
@ -7459,7 +7454,7 @@ cpp_warning_with_line (pfile, line, column, msg, arg1, arg2, arg3)
|
|||
void
|
||||
cpp_pedwarn_with_line (pfile, line, column, msg, arg1, arg2, arg3)
|
||||
cpp_reader *pfile;
|
||||
int line;
|
||||
int line, column;
|
||||
char *msg;
|
||||
char *arg1, *arg2, *arg3;
|
||||
{
|
||||
|
@ -7545,7 +7540,6 @@ cpp_error_from_errno (pfile, name)
|
|||
cpp_reader *pfile;
|
||||
char *name;
|
||||
{
|
||||
int i;
|
||||
cpp_buffer *ip = cpp_file_buffer (pfile);
|
||||
|
||||
cpp_print_containing_files (pfile);
|
||||
|
|
|
@ -248,7 +248,7 @@ static unsigned current_dienum;
|
|||
represents a function or data object defined in this compilation
|
||||
unit which has "extern" linkage. */
|
||||
|
||||
static next_pubname_number = 0;
|
||||
static int next_pubname_number = 0;
|
||||
|
||||
#define NEXT_DIE_NUM pending_sibling_stack[pending_siblings-1]
|
||||
|
||||
|
@ -369,7 +369,9 @@ static inline void fund_type_attribute PROTO((unsigned));
|
|||
static void mod_fund_type_attribute PROTO((tree, int, int));
|
||||
static inline void user_def_type_attribute PROTO((tree));
|
||||
static void mod_u_d_type_attribute PROTO((tree, int, int));
|
||||
#ifdef USE_ORDERING_ATTRIBUTE
|
||||
static inline void ordering_attribute PROTO((unsigned));
|
||||
#endif /* defined(USE_ORDERING_ATTRIBUTE) */
|
||||
static void subscript_data_attribute PROTO((tree));
|
||||
static void byte_size_attribute PROTO((tree));
|
||||
static inline void bit_offset_attribute PROTO((tree));
|
||||
|
@ -392,7 +394,9 @@ static inline void producer_attribute PROTO((char *));
|
|||
static inline void inline_attribute PROTO((tree));
|
||||
static inline void containing_type_attribute PROTO((tree));
|
||||
static inline void abstract_origin_attribute PROTO((tree));
|
||||
#ifdef DWARF_DECL_COORDINATES
|
||||
static inline void src_coords_attribute PROTO((unsigned, unsigned));
|
||||
#endif /* defined(DWARF_DECL_COORDINATES) */
|
||||
static inline void pure_or_virtual_attribute PROTO((tree));
|
||||
static void name_and_src_coords_attributes PROTO((tree));
|
||||
static void type_attribute PROTO((tree, int, int));
|
||||
|
@ -403,7 +407,9 @@ static inline tree member_declared_type PROTO((tree));
|
|||
static char *function_start_label PROTO((tree));
|
||||
static void output_array_type_die PROTO((void *));
|
||||
static void output_set_type_die PROTO((void *));
|
||||
#if 0
|
||||
static void output_entry_point_die PROTO((void *));
|
||||
#endif
|
||||
static void output_inlined_enumeration_type_die PROTO((void *));
|
||||
static void output_inlined_structure_type_die PROTO((void *));
|
||||
static void output_inlined_union_type_die PROTO((void *));
|
||||
|
@ -416,8 +422,10 @@ static void output_lexical_block_die PROTO((void *));
|
|||
static void output_inlined_subroutine_die PROTO((void *));
|
||||
static void output_local_variable_die PROTO((void *));
|
||||
static void output_member_die PROTO((void *));
|
||||
#if 0
|
||||
static void output_pointer_type_die PROTO((void *));
|
||||
static void output_reference_type_die PROTO((void *));
|
||||
#endif
|
||||
static void output_ptr_to_mbr_type_die PROTO((void *));
|
||||
static void output_compile_unit_die PROTO((void *));
|
||||
static void output_string_type_die PROTO((void *));
|
||||
|
@ -432,7 +440,6 @@ static void output_die PROTO((void (*) (), void *));
|
|||
static void end_sibling_chain PROTO((void));
|
||||
static void output_formal_types PROTO((tree));
|
||||
static void pend_type PROTO((tree));
|
||||
static inline int type_of_for_scope PROTO((tree, tree));
|
||||
static void output_pending_types_for_scope PROTO((tree));
|
||||
static void output_type PROTO((tree, tree));
|
||||
static void output_tagged_type_instantiation PROTO((tree));
|
||||
|
@ -1243,7 +1250,7 @@ output_unsigned_leb128 (value)
|
|||
byte |= 0x80;
|
||||
fprintf (asm_out_file, "\t%s\t0x%x", ASM_BYTE_OP, (unsigned) byte);
|
||||
if (flag_debug_asm && value == 0)
|
||||
fprintf (asm_out_file, "\t%s ULEB128 number - value = %u",
|
||||
fprintf (asm_out_file, "\t%s ULEB128 number - value = %lu",
|
||||
ASM_COMMENT_START, orig_value);
|
||||
fputc ('\n', asm_out_file);
|
||||
}
|
||||
|
@ -1275,7 +1282,7 @@ output_signed_leb128 (value)
|
|||
}
|
||||
fprintf (asm_out_file, "\t%s\t0x%x", ASM_BYTE_OP, (unsigned) byte);
|
||||
if (flag_debug_asm && more == 0)
|
||||
fprintf (asm_out_file, "\t%s SLEB128 number - value = %d",
|
||||
fprintf (asm_out_file, "\t%s SLEB128 number - value = %ld",
|
||||
ASM_COMMENT_START, orig_value);
|
||||
fputc ('\n', asm_out_file);
|
||||
}
|
||||
|
@ -3104,14 +3111,17 @@ type_attribute (type, decl_const, decl_volatile)
|
|||
|| TYPE_READONLY (type) || TYPE_VOLATILE (type));
|
||||
|
||||
if (type_is_fundamental (root_type (type)))
|
||||
if (root_type_modified)
|
||||
{
|
||||
if (root_type_modified)
|
||||
mod_fund_type_attribute (type, decl_const, decl_volatile);
|
||||
else
|
||||
else
|
||||
fund_type_attribute (fundamental_type_code (type));
|
||||
}
|
||||
else
|
||||
if (root_type_modified)
|
||||
{
|
||||
if (root_type_modified)
|
||||
mod_u_d_type_attribute (type, decl_const, decl_volatile);
|
||||
else
|
||||
else
|
||||
/* We have to get the type_main_variant here (and pass that to the
|
||||
`user_def_type_attribute' routine) because the ..._TYPE node we
|
||||
have might simply be a *copy* of some original type node (where
|
||||
|
@ -3122,6 +3132,7 @@ type_attribute (type, decl_const, decl_volatile)
|
|||
only creates labels for DIEs representing *main variants*, and it
|
||||
never even knows about non-main-variants.) */
|
||||
user_def_type_attribute (type_main_variant (type));
|
||||
}
|
||||
}
|
||||
|
||||
/* Given a tree pointer to a struct, class, union, or enum type node, return
|
||||
|
|
|
@ -507,7 +507,7 @@ regmove_optimize (f, nregs, regmove_dump_file)
|
|||
operand_number < insn_n_operands[insn_code_number];
|
||||
operand_number++)
|
||||
{
|
||||
rtx p, src, dst, src_subreg;
|
||||
rtx src, dst, src_subreg;
|
||||
enum reg_class src_class, dst_class;
|
||||
|
||||
match_number = match.with[operand_number];
|
||||
|
@ -788,7 +788,7 @@ regmove_optimize (f, nregs, regmove_dump_file)
|
|||
}
|
||||
/* If there is a REG_DEAD note for DST on P, then remove
|
||||
it, because DST is now set there. */
|
||||
if (dst_note = find_reg_note (p, REG_DEAD, dst))
|
||||
if ((dst_note = find_reg_note (p, REG_DEAD, dst)))
|
||||
remove_note (p, dst_note);
|
||||
|
||||
dstno = REGNO (dst);
|
||||
|
@ -868,8 +868,6 @@ find_matches (insn, matchp)
|
|||
for (operand_number = 0; operand_number < insn_n_operands[insn_code_number];
|
||||
operand_number++)
|
||||
{
|
||||
int output_operand = 0;
|
||||
int matching_operand = operand_number;
|
||||
char *p, c;
|
||||
int i = 0;
|
||||
|
||||
|
@ -1218,7 +1216,7 @@ fixup_match_1 (insn, set, src, src_subreg, dst, backward, operand_number,
|
|||
}
|
||||
}
|
||||
}
|
||||
if (0) ;
|
||||
|
||||
#if defined (HAVE_PRE_INCREMENT) || defined (HAVE_PRE_DECREMENT)
|
||||
else if ((code == PLUS || code == MINUS) && insn_const
|
||||
&& try_auto_increment (p, insn, 0, src, insn_const, 1))
|
||||
|
|
16
gcc/sched.c
16
gcc/sched.c
|
@ -119,6 +119,9 @@ Boston, MA 02111-1307, USA. */
|
|||
|
||||
#include "config.h"
|
||||
#include <stdio.h>
|
||||
#if HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
#include "rtl.h"
|
||||
#include "basic-block.h"
|
||||
#include "regs.h"
|
||||
|
@ -179,7 +182,7 @@ static unsigned int *insn_blockage;
|
|||
#define UNIT_BLOCKED(B) ((B) >> (2 * BLOCKAGE_BITS))
|
||||
#define BLOCKAGE_RANGE(B) \
|
||||
(((((B) >> BLOCKAGE_BITS) & BLOCKAGE_MASK) << (HOST_BITS_PER_INT / 2)) \
|
||||
| (B) & BLOCKAGE_MASK)
|
||||
| ((B) & BLOCKAGE_MASK))
|
||||
|
||||
/* Encodings of the `<name>_unit_blockage_range' function. */
|
||||
#define MIN_BLOCKAGE_COST(R) ((R) >> (HOST_BITS_PER_INT / 2))
|
||||
|
@ -1866,7 +1869,7 @@ rank_for_schedule (x, y)
|
|||
int value;
|
||||
|
||||
/* Choose the instruction with the highest priority, if different. */
|
||||
if (value = INSN_PRIORITY (tmp) - INSN_PRIORITY (tmp2))
|
||||
if ((value = INSN_PRIORITY (tmp) - INSN_PRIORITY (tmp2)))
|
||||
return value;
|
||||
|
||||
if (last_scheduled_insn)
|
||||
|
@ -1892,7 +1895,7 @@ rank_for_schedule (x, y)
|
|||
else
|
||||
tmp2_class = 2;
|
||||
|
||||
if (value = tmp_class - tmp2_class)
|
||||
if ((value = tmp_class - tmp2_class))
|
||||
return value;
|
||||
}
|
||||
|
||||
|
@ -3181,7 +3184,7 @@ schedule_block (b, file)
|
|||
register int stalls;
|
||||
|
||||
for (stalls = 1; stalls < INSN_QUEUE_SIZE; stalls++)
|
||||
if (insn = insn_queue[NEXT_Q_AFTER (q_ptr, stalls)])
|
||||
if ((insn = insn_queue[NEXT_Q_AFTER (q_ptr, stalls)]))
|
||||
{
|
||||
for (; insn; insn = NEXT_INSN (insn))
|
||||
{
|
||||
|
@ -3565,12 +3568,12 @@ regno_use_in (regno, x)
|
|||
{
|
||||
if (fmt[i] == 'e')
|
||||
{
|
||||
if (tem = regno_use_in (regno, XEXP (x, i)))
|
||||
if ((tem = regno_use_in (regno, XEXP (x, i))))
|
||||
return tem;
|
||||
}
|
||||
else if (fmt[i] == 'E')
|
||||
for (j = XVECLEN (x, i) - 1; j >= 0; j--)
|
||||
if (tem = regno_use_in (regno , XVECEXP (x, i, j)))
|
||||
if ((tem = regno_use_in (regno , XVECEXP (x, i, j))))
|
||||
return tem;
|
||||
}
|
||||
|
||||
|
@ -4238,7 +4241,6 @@ schedule_insns (dump_file)
|
|||
{
|
||||
int max_uid = MAX_INSNS_PER_SPLIT * (get_max_uid () + 1);
|
||||
int b;
|
||||
int i;
|
||||
rtx insn;
|
||||
|
||||
/* Taking care of this degenerate case makes the rest of
|
||||
|
|
15
gcc/toplev.c
15
gcc/toplev.c
|
@ -39,6 +39,16 @@ Boston, MA 02111-1307, USA. */
|
|||
#ifdef HAVE_SYS_PARAM_H
|
||||
#include <sys/param.h>
|
||||
#endif
|
||||
#if HAVE_STDLIB_H
|
||||
#include <stdlib.h>
|
||||
#endif
|
||||
#ifdef HAVE_STRING_H
|
||||
#include <string.h>
|
||||
#else
|
||||
#ifdef HAVE_STRINGS_H
|
||||
#include <strings.h>
|
||||
#endif
|
||||
#endif
|
||||
#ifdef HAVE_UNISTD_H
|
||||
#include <unistd.h>
|
||||
#endif
|
||||
|
@ -1300,7 +1310,7 @@ v_message_with_decl (decl, prefix, s, ap)
|
|||
char *s;
|
||||
va_list ap;
|
||||
{
|
||||
char *n, *p;
|
||||
char *p;
|
||||
|
||||
fprintf (stderr, "%s:%d: ",
|
||||
DECL_SOURCE_FILE (decl), DECL_SOURCE_LINE (decl));
|
||||
|
@ -1906,6 +1916,7 @@ do_abort ()
|
|||
|
||||
void
|
||||
botch (s)
|
||||
char * s;
|
||||
{
|
||||
abort ();
|
||||
}
|
||||
|
@ -3734,7 +3745,7 @@ main (argc, argv, envp)
|
|||
optimize_size = 1;
|
||||
else
|
||||
{
|
||||
while (c = *p++)
|
||||
while ((c = *p++))
|
||||
if (! (c >= '0' && c <= '9'))
|
||||
break;
|
||||
if (c == 0)
|
||||
|
|
19
gcc/tree.c
19
gcc/tree.c
|
@ -948,7 +948,9 @@ make_node (code)
|
|||
register int length;
|
||||
register struct obstack *obstack = current_obstack;
|
||||
register int i;
|
||||
#ifdef GATHER_STATISTICS
|
||||
register tree_node_kind kind;
|
||||
#endif
|
||||
|
||||
switch (type)
|
||||
{
|
||||
|
@ -1419,9 +1421,6 @@ real_value_from_int_cst (type, i)
|
|||
tree type, i;
|
||||
{
|
||||
REAL_VALUE_TYPE d;
|
||||
REAL_VALUE_TYPE e;
|
||||
/* Some 386 compilers mishandle unsigned int to float conversions,
|
||||
so introduce a temporary variable E to avoid those bugs. */
|
||||
|
||||
#ifdef REAL_ARITHMETIC
|
||||
if (! TREE_UNSIGNED (TREE_TYPE (i)))
|
||||
|
@ -1431,8 +1430,12 @@ real_value_from_int_cst (type, i)
|
|||
REAL_VALUE_FROM_UNSIGNED_INT (d, TREE_INT_CST_LOW (i),
|
||||
TREE_INT_CST_HIGH (i), TYPE_MODE (type));
|
||||
#else /* not REAL_ARITHMETIC */
|
||||
/* Some 386 compilers mishandle unsigned int to float conversions,
|
||||
so introduce a temporary variable E to avoid those bugs. */
|
||||
if (TREE_INT_CST_HIGH (i) < 0 && ! TREE_UNSIGNED (TREE_TYPE (i)))
|
||||
{
|
||||
REAL_VALUE_TYPE e;
|
||||
|
||||
d = (double) (~ TREE_INT_CST_HIGH (i));
|
||||
e = ((double) ((HOST_WIDE_INT) 1 << (HOST_BITS_PER_WIDE_INT / 2))
|
||||
* (double) ((HOST_WIDE_INT) 1 << (HOST_BITS_PER_WIDE_INT / 2)));
|
||||
|
@ -1443,6 +1446,8 @@ real_value_from_int_cst (type, i)
|
|||
}
|
||||
else
|
||||
{
|
||||
REAL_VALUE_TYPE e;
|
||||
|
||||
d = (double) (unsigned HOST_WIDE_INT) TREE_INT_CST_HIGH (i);
|
||||
e = ((double) ((HOST_WIDE_INT) 1 << (HOST_BITS_PER_WIDE_INT / 2))
|
||||
* (double) ((HOST_WIDE_INT) 1 << (HOST_BITS_PER_WIDE_INT / 2)));
|
||||
|
@ -1959,7 +1964,7 @@ tree_last (chain)
|
|||
{
|
||||
register tree next;
|
||||
if (chain)
|
||||
while (next = TREE_CHAIN (chain))
|
||||
while ((next = TREE_CHAIN (chain)))
|
||||
chain = next;
|
||||
return chain;
|
||||
}
|
||||
|
@ -2980,7 +2985,9 @@ build1 (code, type, node)
|
|||
{
|
||||
register struct obstack *obstack = expression_obstack;
|
||||
register int i, length;
|
||||
#ifdef GATHER_STATISTICS
|
||||
register tree_node_kind kind;
|
||||
#endif
|
||||
register tree t;
|
||||
|
||||
#ifdef GATHER_STATISTICS
|
||||
|
@ -4611,7 +4618,7 @@ print_obstack_statistics (str, o)
|
|||
n_alloc += chunk->limit - &chunk->contents[0];
|
||||
chunk = chunk->prev;
|
||||
}
|
||||
fprintf (stderr, "obstack %s: %lu bytes, %d chunks\n",
|
||||
fprintf (stderr, "obstack %s: %u bytes, %d chunks\n",
|
||||
str, n_alloc, n_chunks);
|
||||
}
|
||||
|
||||
|
@ -4621,8 +4628,10 @@ print_obstack_statistics (str, o)
|
|||
void
|
||||
dump_tree_statistics ()
|
||||
{
|
||||
#ifdef GATHER_STATISTICS
|
||||
int i;
|
||||
int total_nodes, total_bytes;
|
||||
#endif
|
||||
|
||||
fprintf (stderr, "\n??? tree nodes created\n\n");
|
||||
#ifdef GATHER_STATISTICS
|
||||
|
|
Loading…
Add table
Reference in a new issue