diff options
author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-01-27 22:11:45 +0000 |
---|---|---|
committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-01-27 22:11:45 +0000 |
commit | 6536bc063da52fbe9d0e91141b5cbadc3dcf0e42 (patch) | |
tree | 57484388e463e5f160f2199ccaf42550bcca4806 | |
parent | c08e043fab5b710df558e365e512e0e9206560c5 (diff) | |
download | gcc-6536bc063da52fbe9d0e91141b5cbadc3dcf0e42.tar.gz |
* 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.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17516 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/combine.c | 16 | ||||
-rw-r--r-- | gcc/final.c | 75 | ||||
-rw-r--r-- | gcc/regclass.c | 4 |
3 files changed, 68 insertions, 27 deletions
diff --git a/gcc/combine.c b/gcc/combine.c index 4bfa9e56ebb..926d38f8c27 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -465,7 +465,10 @@ combine_instructions (f, nregs) rtx f; int nregs; { - register rtx insn, next, prev; + register rtx insn, next; +#ifdef HAVE_cc0 + register rtx prev; +#endif register int i; register rtx links, nextlinks; @@ -823,7 +826,10 @@ can_combine_p (insn, i3, pred, succ, pdest, psrc) { int i; rtx set = 0, src, dest; - rtx p, link; + rtx p; +#ifdef AUTO_INC_DEC + rtx, link; +#endif int all_adjacent = (succ ? (next_active_insn (insn) == succ && next_active_insn (succ) == i3) : next_active_insn (insn) == i3); @@ -5739,7 +5745,7 @@ extract_left_shift (x, count) /* If we can safely shift this constant and we find the inner shift, make a new operation. */ if (GET_CODE (XEXP (x,1)) == CONST_INT - && (INTVAL (XEXP (x, 1)) & (((HOST_WIDE_INT) 1 << count)) - 1) == 0 + && (INTVAL (XEXP (x, 1)) & ((((HOST_WIDE_INT) 1 << count)) - 1)) == 0 && (tem = extract_left_shift (XEXP (x, 0), count)) != 0) return gen_binary (code, mode, tem, GEN_INT (INTVAL (XEXP (x, 1)) >> count)); @@ -8126,7 +8132,7 @@ merge_outer_ops (pop0, pconst0, op1, const1, mode, pcomp_p) op0 = SET; else /* op1 == XOR */ /* (a ^ b) | b == a | b */ - ; + {;} break; case XOR: @@ -9128,7 +9134,7 @@ gen_rtx_combine VPROTO((enum rtx_code code, enum machine_mode mode, ...)) va_list p; int n_args; rtx args[3]; - int i, j; + int j; char *fmt; rtx rt; struct undo *undo; diff --git a/gcc/final.c b/gcc/final.c index 10beae297f0..24b691148cb 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -52,6 +52,16 @@ Boston, MA 02111-1307, USA. */ #endif #include <stdio.h> #include <ctype.h> +#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 #include "tree.h" #include "rtl.h" @@ -837,7 +847,11 @@ shorten_branches (first) insn = NEXT_INSN (insn)) { int new_length; +#ifdef SHORTEN_WITH_ADJUST_INSN_LENGTH +#ifdef ADJUST_INSN_LENGTH int tmp_length; +#endif +#endif uid = INSN_UID (insn); insn_addresses[uid] = insn_current_address; @@ -1063,8 +1077,14 @@ profile_function (file) FILE *file; { int align = MIN (BIGGEST_ALIGNMENT, LONG_TYPE_SIZE); +#if defined(ASM_OUTPUT_REG_PUSH) +#if defined(STRUCT_VALUE_INCOMING_REGNUM) || defined(STRUCT_VALUE_REGNUM) int sval = current_function_returns_struct; +#endif +#if defined(STATIC_CHAIN_INCOMING_REGNUM) || defined(STATIC_CHAIN_REGNUM) int cxt = current_function_needs_context; +#endif +#endif /* ASM_OUTPUT_REG_PUSH */ data_section (); ASM_OUTPUT_ALIGN (file, floor_log2 (align / BITS_PER_UNIT)); @@ -1683,7 +1703,9 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) register rtx body = PATTERN (insn), set; int insn_code_number; char *template; +#ifdef HAVE_cc0 rtx note; +#endif /* An INSN, JUMP_INSN or CALL_INSN. First check for special kinds that recog doesn't recognize. */ @@ -1857,7 +1879,9 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) actions in these insns and the CC must be marked as being clobbered by the function. */ if (GET_CODE (XVECEXP (body, 0, 0)) == CALL_INSN) - CC_STATUS_INIT; + { + CC_STATUS_INIT; + } /* Following a conditional branch sequence, we have a new basic block. */ @@ -2575,7 +2599,7 @@ output_asm_insn (template, operands) rtx *operands; { register char *p; - register int c, i; + register int c; /* An insn may return a null string template in a case where no assembler code is needed. */ @@ -2589,7 +2613,7 @@ output_asm_insn (template, operands) ASM_OUTPUT_OPCODE (asm_out_file, p); #endif - while (c = *p++) + while ((c = *p++)) switch (c) { case '\n': @@ -2607,16 +2631,20 @@ output_asm_insn (template, operands) #ifdef ASSEMBLER_DIALECT case '{': - /* If we want the first dialect, do nothing. Otherwise, skip - DIALECT_NUMBER of strings ending with '|'. */ - for (i = 0; i < dialect_number; i++) - { - while (*p && *p++ != '|') - ; + { + register int i; + + /* If we want the first dialect, do nothing. Otherwise, skip + DIALECT_NUMBER of strings ending with '|'. */ + for (i = 0; i < dialect_number; i++) + { + while (*p && *p++ != '|') + ; - if (*p == '|') - p++; - } + if (*p == '|') + p++; + } + } break; case '|': @@ -2904,7 +2932,6 @@ asm_fprintf VPROTO((FILE *file, char *p, ...)) va_list argptr; char buf[10]; char *q, c; - int i; VA_START (argptr, p); @@ -2915,21 +2942,25 @@ asm_fprintf VPROTO((FILE *file, char *p, ...)) buf[0] = '%'; - while (c = *p++) + while ((c = *p++)) switch (c) { #ifdef ASSEMBLER_DIALECT case '{': - /* If we want the first dialect, do nothing. Otherwise, skip - DIALECT_NUMBER of strings ending with '|'. */ - for (i = 0; i < dialect_number; i++) - { - while (*p && *p++ != '|') - ; + { + int i; - if (*p == '|') - p++; + /* If we want the first dialect, do nothing. Otherwise, skip + DIALECT_NUMBER of strings ending with '|'. */ + for (i = 0; i < dialect_number; i++) + { + while (*p && *p++ != '|') + ; + + if (*p == '|') + p++; } + } break; case '|': diff --git a/gcc/regclass.c b/gcc/regclass.c index 969d89e7d19..ef64cb194f3 100644 --- a/gcc/regclass.c +++ b/gcc/regclass.c @@ -25,6 +25,9 @@ Boston, MA 02111-1307, USA. */ #include "config.h" #include <stdio.h> +#if HAVE_STDLIB_H +#include <stdlib.h> +#endif #include "rtl.h" #include "hard-reg-set.h" #include "flags.h" @@ -598,6 +601,7 @@ reg_preferred_class (regno) enum reg_class reg_alternate_class (regno) + int regno; { if (prefclass == 0) return ALL_REGS; |