* gcse.c (compute_ld_motion_mems): For MEM destinations, only
consider those to be movable where the source matches
want_to_gcse_p.
(update_ld_motion_stores): In comment, refer to
compute_ld_motion_mems for validity of replacement.
From-SVN: r65766
* gcov-dump.c (tag_summary): Remove max_sum
* gcov-io.h (gcov_summary, gcov_write_summary, gcov_read_summary): Kill
max_sum.
* libgcov.c (gcov_exit): Do one pass over the data. Make error message
more verbose.
From-SVN: r65758
* emit-rtl.c (subreg_hard_regno): Check that register is representable.
* reload.c (reload_inner_reg_of_subreg): When register is not
representable, reload the whole thing.
(find_reloads): Likewsie.
* rtlanal.c (subreg_representable_p): New function.
* profile.c (compute_branch_probabilities): Cleanup sanity checking;
allow negative probabilities for edges from the call to exit.
(branch_prob): Do not add fake edges for functions that may return twice
From-SVN: r65757
2003-04-17 Phil Edwards <pme@gcc.gnu.org>
* Makefile.tpl (GCC_STRAP_TARGETS): New variable containing all the
previous bootstrap targets, plus bubblestrap, quickstrap, cleanstrap,
and restrap.
* Makefile.in: Regenerate.
From-SVN: r65752
2003-04-17 Janis Johnson <janis187@us.ibm.com>
* doc/sourcebuild.texi (Test Suites): Document support for testing
binary compatibility (moved from testsuite/README.compat).
* testsuite/README.compat: Remove; content now in doc/sourcebuild.texi.
From-SVN: r65748
2003-04-17 Paolo Carlini <pcarlini@unitus.it>
* include/std/std_streambuf.h (setp): _M_out_lim, being
the end limit of used put area, is set equal to _M_out_beg.
From-SVN: r65740
* config/s390/s390.c (SYMBOL_FLAG_ALIGN1): New.
(tls_model_chars): Remove.
(larl_operand): Use SYMBOL_REF_FLAGS.
(tls_symbolic_operand): Use SYMBOL_REF_TLS_MODEL.
(legitimize_pic_address): Use SYMBOL_REF_LOCAL_P.
(s390_output_mi_thunk): Likewise.
(s390_emit_prologue): Set SYMBOL_FLAG_LOCAL as needed.
(s390_function_profiler): Likewise.
(s390_encode_section_info): Use default_encode_section_info
and SYMBOL_FLAG_ALIGN1.
(s390_strip_name_encoding): Remove.
* config/s390/s390.h (ASM_OUTPUT_LABELREF): Remove.
* config/s390/s390.md (call, call_value): Use SYMBOL_REF_LOCAL_P.
(builtin_setjmp_receiver): Set SYMBOL_FLAG_LOCAL as needed.
From-SVN: r65734
* config/h8300/h8300.c (SYMBOL_FLAG_FUNCVEC_FUNCTION): New.
(small_call_insn_operand): Use it.
(SYMBOL_FLAG_EIGHTBIT_DATA): New.
(h8300_eightbit_constant_address_p): Use it.
(SYMBOL_FLAG_TINY_DATA): New.
(h8300_tiny_constant_address_p): Use it.
(h8300_encode_label, h8300_strip_name_encoding): Remove.
(h8300_encode_section_info): Set SYMBOL_REF_FLAGS.
* config/h8300/h8300.h (TINY_DATA_NAME_P): Remove.
(ASM_OUTPUT_LABELREF): Remove.
From-SVN: r65726
* config/frv/frv.c (symbol_ref_small_data_p): Remove. Replace
all users with SYMBOL_REF_SMALL_P.
(const_small_data_p): Use SYMBOL_REF_SMALL_P.
(frv_encode_section_info): Remove.
(frv_strip_name_encoding): Remove.
(frv_in_small_data_p): Merge tests from encode_section_info.
(frv_print_operand): Use '@' not SDATA_FLAG_CHAR.
* config/frv/frv.h (SDATA_FLAG_CHAR): Remove.
(SDATA_NAME_P): Remove.
(ASM_OUTPUT_ALIGNED_DECL_LOCAL): Use SIZE not SDATA_NAME_P.
(ASM_OUTPUT_LABELREF): Remove.
(PRINT_OPERAND_PUNCT_VALID_P): Use '@' not SDATA_FLAG_CHAR.
From-SVN: r65725
* config/cris/cris.c (cris_gotless_symbol, cris_got_symbol): Use
SYMBOL_REF_LOCAL_P; abort if not pic.
(cris_encode_section_info): Remove.
From-SVN: r65721
2003-04-16 Roger Sayle <roger@eyesopen.com>
* c-semantics.c (find_reachable_label): New function to find a
potentially reachable label in an expression.
(expand_unreachable_if_stmt): Similar to expand_if_stmt but
assumes the start of the IF_STMT is unreachable (dead) code.
(expand_unreachable_stmt): Similar to expand_stmt but assumes
the start of the statement list is unreachable (dead) code.
(genrtl_if_stmt): If the controlling expression of the IF
is constant, use expand_unreachable_stmt for the THEN or ELSE
clause as appropriate.
(genrtl_switch_stmt): Use expand_unreachable_stmt to expand
the body of a SWITCH statement.
(expand_stmt): The code immediately following a "return",
"break", "continue" or "goto" is unreachable.
* Makefile.in (c-semantics.o): Depend upon tree-inline.h.
* gcc.dg/Wunreachable-5.c: New test case for PR c/10175.
* gcc.c-torture/execute/medce-1.c: New test case.
* gcc.c-torture/execute/medce-2.c: New test case.
From-SVN: r65715
* reload1.c (reload_cse_noop_set_p): Return false if mode of
SET_DEST is not the same as that returned by...
* cselib.h (cselib_reg_set_mode): ... new function.
* cselib.c (cselib_reg_set_mode): Define it.
(REG_VALUES): Document semantics of first element as set mode.
(cselib_subst_to_values): Skip first element if ELT is NULL.
(cselib_lookup): Likewise. Insert past the first element.
(cselib_invalidate_regno): NULLify first element.
(cselib_record_set): Set first element.
From-SVN: r65713
* tree.c (skip_simple_arithmetics_at, saved_expr_p): New functions.
(save_expr): Replace loop by call to skip_simple_arithmetics_at.
* tree.h: Add prototypes for the two new functions.
* fold-const.c (fold_binary_op_with_conditional_arg): Replace test
updates introduced in the previous revision by call to saved_expr_p.
* stor-layout.c (put_pending_size): Use skip_simple_arithmetics_at.
From-SVN: r65702
* expr.c (store_field): Force usage of bitfield instructions when
the field position requires it, whatever SLOW_UNALIGNED_ACCESS.
(expand_expr, case BIT_FIELD_REF): likewise.
From-SVN: r65701
* config/alpha/alpha.c (SYMBOL_FLAG_NEAR, SYMBOL_FLAG_SAMEGP): New.
(samegp_function_operand): Use SYMBOL_FLAG_SAMEGP.
(direct_call_operand): Use SYMBOL_FLAG_NEAR.
(local_symbolic_operand): Use SYMBOL_REF_LOCAL_P.
(small_symbolic_operand): Use SYMBOL_REF_SMALL_P.
(global_symbolic_operand): Similarly.
(tls_symbolic_operand_1): Use SYMBOL_REF_TLS_MODEL.
(tls_symbolic_operand_type): Likewise.
(alpha_encode_section_info): Use default_encode_section_info.
(alpha_strip_name_encoding): Remove.
(get_tls_get_addr): Split out from ...
(alpha_legitimize_address): ... here.
(alpha_emit_xfloating_libcall): Use init_one_libfunc.
(get_some_local_dynamic_name_1): Use SYMBOL_REF_TLS_MODEL.
(alpha_initialize_trampoline): Use init_one_libfunc.
(alpha_setup_incoming_varargs): Mark unused parameters.
(alpha_initial_elimination_offset): Likewise.
(alpha_end_function): Use SYMBOL_FLAG_NEAR, SYMBOL_FLAG_SAMEGP.
(unicosmk_unique_section): Use default_strip_name_encoding.
(unicosmk_ssib_name, unicosmk_output_externs): Likewise.
From-SVN: r65696