* gcc.c (ASM_DEBUG_SPEC): Use conditional expression rather than
preprocessor define. If only DBX_DEBUGGING_INFO or only
DWARF2_DEBUGGING_INFO is supported for the target, provide
appropriate definitions.
From-SVN: r47390
* unroll.c (loop_iterations): Detect one situation in which we
overestimate the number of iterations.
Co-Authored-By: Richard Henderson <rth@redhat.com>
From-SVN: r47386
* Makefile.in (c-lang.o): Depends on langhooks-def.h.
(expr.o, varasm.o): Depends on langhooks.h.
* c-common.c (c_safe_from_p): Always declare.
(c_expand_expr): Refine when declared.
* c-lang.c (c-common.h): Now include.
(LANG_HOOKS_SAFE_FROM_P): Define new hook.
(c_init): Don't set lang_safe_from_expr.
* expr.c (langhooks.h): Now include.
(lang_safe_from_p): No longer define.
(safe_from_p): Use lang hook.
(expand_expr): Set IGNORE if VOID_TYPE result of VIEW_CONVERT_EXPR too.
(expand_expr, case VIEW_CONVERT_EXPR): Pass ro_modifier down.
* expr.h (lang_expand_constant, lang_safe_from_p): Delete.
* langhooks-def.h (lhd_return_tree, lhd_safe_from_p): New decls.
(LANG_HOOKS_EXPAND_CONSTANT, LANG_HOOKS_SAFE_FROM_P): New hooks.
* langhooks.c (lhd_return_tree, lhd_safe_from_p): New functions.
* langhooks.h (struct lang_hooks): New fields expand_constant
and safe_from_p.
* output.h (output_constant): Size arg is HOST_WIDE_INT.
* stmt.c (expand_decl_init): No longer need to expand constant
for CONST_DECL.
* stor-layout.c (put_pending_size): Don't check for SAVE_EXPR.
* toplev.c (lang_expand_constant): Delete var.
* tree.c (save_expr): Don't put another SAVE_EXPR around simple
operations on SAVE_EXPR.
* varasm.c (langhooks.h): Now include.
(compare_constant_1): Use lang_hooks, not lang_expand_constant.
(record_constant_1, output_addressed_constants): Likewise.
(initializer_constant_valid_p, output_constant): Likewise.
(output_constant_def): Process no-defer of string constant.
(output_addressed_constants, case ADDR_EXPR): Use handled_component_p.
(output_constant): Strip more conversions.
Track our size and pad for the rest.
(array_size_for_constructor): Remove code for non-byte STRING_CST.
(output_constructor): SIZE now HOST_WIDE_INT.
* cp/Make-lang.in (cp-lang.o): Depends on c-common.h.
* cp/cp-lang.c (c-common.h): Include.
(LANG_HOOKS_EXPAND_CONSTANT, LANG_HOOKS_SAFE_FROM_P): New hooks.
* cp/decl.c (cxx_init_decl_processing): Don't set lang_safe_from_p.
* cp/expr.c (init_cplus_expand): Don't set lang_expand_constant.
From-SVN: r47376
* Makefile.in (stamp-h): Depend on Makefile for proper
serialization.
(*-subdir): Depend on config.h for proper serialization.
Co-Authored-By: Daniel Jacobowitz <drow@mvista.com>
From-SVN: r47354
* sparc.c (sparc_absnegfloat_split_legitimate): Do not call
alter_subreg.
* sparc.md (post-reload splitters): Do not call alter_subreg.
* cfgrtl.c (purge_dead_edges): Fix typo in previous fix.
From-SVN: r47339
* verify.cc (_Jv_BytecodeVerifier::branch_prepass): Use
java_opcode as type for switch.
[op_wide]: Likewise.
(_Jv_BytecodeVerifier::verify_instructions_0): Likewise.
[op_invokevirtual]: Likewise.
* include/java-insns.h (java_opcode): Give enum a name.
From-SVN: r47330
* c-format.c (FMT_FLAG_DOLLAR_GAP_POINTER_OK): New.
(format_types): Use it for scanf.
(dollar_arguments_pointer_p): New.
(init_dollar_format_checking): Store details of which arguments
are pointers.
(maybe_read_dollar_number): Reallocate dollar_arguments_pointer_p.
(finish_dollar_format_checking): Take extra parameter
pointer_gap_ok. Treat unused arguments differently if
pointer_gap_ok and the unused arguments are pointers.
(check_format_info_main): Pass extra argument to
finish_dollar_format_checking.
* doc/invoke.texi (-Wno-format-extra-args): Document behavior when
unused arguments are present between used arguments with operand
numbers.
testsuite:
* gcc.dg/format/strfmon-1.c: Update comments. Adjust examples
from Austin Group draft 7.
* gcc.dg/format/xopen-1.c: Update comments. Add tests for gaps in
scanf format arguments.
* gcc.dg/format/no-exargs-2.c: New test.
From-SVN: r47327
2001-11-25 Daniel Berlin <dan@cgsoftware.com>
* df.c: Add prototypes for hybrid_search_bitmap and
hybrid_search_sbitmap.
(hybrid_search_bitmap): New function.
(hybrid_search_sbitmap): New function.
(iterative_dataflow_sbitmap): Change to use hybrid_search_sbitmap.
(iterative_dataflow_bitmap): Ditto.
From-SVN: r47326