+2003-03-05 Michael Matz <matz@suse.de>
+
+ * i386/i386.c (ix86_save_reg): Also test
+ current_function_uses_const_pool.
+
+2003-03-05 Michael Matz <matz@suse.de>
+
+ * unwind.h: Add the GPL exception.
+ * Makefile.in (USER_H): Add unwind.h.
+
+2003-03-05 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/9799
+ * c-typeck.c (push_init_level): Add sanity check.
+
+Wed Mar 5 02:04:04 CET 2003 Jan Hubicka <jh@suse.cz>
+
+ * toplev.c (rest_of_compilation): Deffer RTL compilation only when
+ RTL inlining is done.
+
+ * cgraphunit.c (cgraph_mark_local_functions): New local function.
+ (cgraph_optimize): Mark local functions.
+ * i386-protos.h (init_cumulative_args): Update prototype.
+ * i386.c (init_cumulative_args): Use register passing convention for
+ local functions.
+
+ * cgraph.c (cgraph_global_info_ready): New global variable
+ (cgraph_local_info, cgraph_global_info): New functions.
+ * cgraph.h (struct cgraph_local_info, cgraph_global_info): New
+ structures.
+ (cgraph_local_info, cgraph_global_info, cgraph_global_info_ready):
+ Declare.
+ * cgraphunit.c (cgraph_finalize_function): Set inline_many.
+ (cgraph_mark_functions_to_output): Use inline_many.
+ (cgraph_expand_function): Free DECL_SAVED_TREE uncondtionally.
+ (cgraph_expand_functions): Expand inline functions last.
+ (cgraph_optimize): Do not emit uneeded functions.
+
+2003-03-04 Steve Ellcey <sje@cup.hp.com>
+
+ * expr.c (convert_modes): Check for legal hard register.
+
+2003-03-04 Tom Tromey <tromey@redhat.com>
+
+ * doc/sourcebuild.texi (Front End Directory): Document tags.
+ * configure: Rebuilt.
+ * configure.in (target_list): Added tags.
+ * Makefile.in (TAGS): Depend on lang.clean. Include subdirectory
+ TAGS files by reference.
+ * objc/Make-lang.in (objc.tags): New target.
+
+2003-03-04 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * gcov-io.h (gcov_save_position, gcov_reserve_length, gcov_resync,
+ gcov_skip, gcov_skip_string, gcov_write_unsigned, gcov_write_counter,
+ gcov_write_string, gcov_read_unsigned, gcov_read_counter,
+ gcov_read_string, gcov_write_length): Modified to enable reading/
+ writing of whole .da file just once.
+ (da_file_open, da_file_close, da_file_eof, da_file_error,
+ da_file_position, da_file_seek, da_file_write, da_file_read): New
+ functions.
+ (actual_da_file, actual_da_file_position, actual_da_file_length,
+ actual_da_file_buffer, actual_da_file_buffer_size): New static
+ functions.
+ * libgcov.c (gcov_exit): Modified to read/write the whole .da file at
+ just once.
+
+
+2003-03-04 Andreas Schwab <schwab@suse.de>
+
+ * config/m68k/m68k.c (m68k_output_function_prologue): Fix CFA
+ offset without frame pointer.
+
+2003-03-04 Steve Ellcey <sje@cup.hp.com>
+
+ * expr.c (expand_expr): Call promote_mode to set unsignedp.
+
+2003-03-04 Daniel Jacobowitz <drow@mvista.com>
+
+ * configure.in: Don't always define TARGET_SYSTEM_ROOT.
+ * configure: Regenerated.
+ * gcc.c: Check whether TARGET_SYSTEM_ROOT is defined.
+
+2003-03-04 Andreas Jaeger <aj@suse.de>
+
+ * configure.in: Check for <memcheck.h>.
+ * configure: Regenerated.
+
+ * config.in: Define HAVE_MEMCHECK_H.
+
+ * ggc-common.c: Use <memcheck.h> if available instead of
+ <valgrind.h>.
+ * ggc-page.c: Likewise.
+ * cppfiles.c: Likewise.
+
+2003-03-04 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*extzv_8_8): Fix cc and lengths.
+
+2003-03-04 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR c/9262
+ * c-typeck.c (do_case): Attach the first case label to the SWITCH_BODY.
+ (c_finish_case): Rechain the next statements to the SWITCH_STMT.
+
+Tue Mar 4 11:30:04 CET 2003 Jan Hubicka <jh@suse.cz>
+
+ * doc/invoke.texi: Document that unit-at-a-time is enabled for -O3
+ * toplev.c (parse_options_and_default_flags): Enable flag_unit_at_a_time
+ for -O3.
+
+2003-03-04 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in: Delete three unused variables. Move a variable
+ definition closer to its use. Simplify use_collect2 logic. Start to
+ organize. Simplify tests for in-tree gas and ld.
+ * configure: Regenerate.
+
+2003-03-04 Neil Booth <neil@daikokuya.co.uk>
+
+ * Makefile.in: Update.
+ * c-common.c (flag_no_line_commands, flag_no_output,
+ flag_dump_macros, flag_dump_includes): New.
+ * c-common.h (flag_no_line_commands, flag_no_output,
+ flag_dump_macros, flag_dump_includes, preprocess_file): New.
+ (init_c_lex): Update prototype.
+ * c-lex.c (init_c_lex): Update prototype; move some code to
+ c_common_init.
+ * c-opts.c (preprocess_file): Subsume into c_common_init.
+ (c_common_decode_option): Update flags.
+ (c_common_init): Move code from preprocess_file and init_c_lex.
+ (sanitize_cpp_opts): Update.
+ * c-ppoutput.c: New, cppmain.c almost verbatim.
+ * cpphash.h (struct printer): Remove.
+ (struct cpp_reader): Remove print.
+ * cpplib.h (dump_none, dump_only, dump_names, dump_definitions,
+ cpp_preprocess_file): Remove.
+ (struct cpp_options): Remove no_output, no_line_commands, dump_macros
+ and dump_includes.
+ * cppmain.c: Remove.
+ * doc/passes.texi: Update.
+
+2003-03-04 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * function.c (STACK_ALIGNMENT_NEEDED): New macro. Default to 1.
+ (assign_stack_local_1): Perform overall stack alignment only when
+ STACK_ALIGNMENT_NEEDED is non-zero.
+ * doc/tm.texi (STACK_ALIGNMENT_NEEDED): Document.
+
+ * pa.c (compute_frame_size): Rename fsize to size. Account for
+ alignment to a word boundary before general register save block. Only
+ account for double-word alignment before floating point register save
+ block if one or more are saved. Don't allocate space for %r3 when
+ frame pointer is needed.
+ (hppa_expand_prologue): Include alignment to word boundary in local
+ frame size.
+ * pa.h (STARTING_FRAME_OFFSET): Define to 8 on both 32 and 64-bit ports.
+ (STACK_ALIGNMENT_NEEDED): Define.
+
+2003-03-04 Kevin Buettner <kevinb@redhat.com>
+
+ * dwarf2out.c (rtl_for_decl_location): Don't return NULL_RTX for
+ global register variables.
+
+2003-03-04 Alexandre Oliva <aoliva@redhat.com>
+
+ * reload.c (reload_adjust_reg_for_mode): New function.
+ (subst_reloads): Call it.
+ (operands_match_p): Adjust registers using HARD_REGNO_NREGS.
+ * reload.h (reload_adjust_reg_for_mode): Declare.
+ * reload1.c (emit_input_reload_insns, emit_output_reload_insns):
+ Call it.
+
+2003-03-03 James E Wilson <wilson@tuliptree.org>
+
+ * optabs.c (add_equal_note): Delete SUBREG_REG use.
+ Fixes PR c/7872.
+
+2003-03-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*ixorsi3_ashift_16): New.
+ (*ixorsi3_lshiftrt_16): New.
+ (*iorsi3_ashift_16): Remove.
+
+2003-03-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*extzv_8_8): Use '?' to simplify the
+ pattern.
+
+2003-03-03 Geoffrey Keating <geoffk@apple.com>
+
+ * doc/install.texi (Specific): Update entry for powerpc-darwin.
+
+2003-03-03 Richard Henderson <rth@redhat.com>
+
+ * config/ia64/ia64.h (HAVE_AS_LTOFFX_LDXMOV_RELOCS): Default to 0.
+
+2003-03-03 David Edelsohn <edelsohn@gnu.org>
+
+ * config/rs6000/rs6000.c (rs6000_multipass_dfa_lookahead): Delete.
+ (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Delete.
+ (rs6000_variable_issue): Do not return negative value.
+ (rs6000_issue_rate): Uniformly set issue rate to 1 for first
+ scheduling pass.
+
+2003-03-03 Zdenek Dvorak <rakdver@atrey.karlin.mff.cuni.cz>
+
+ * dwarf2out.c (dwarf2out_finish): Swap order of break_out_includes and
+ prune_unused_types calls.
+
+2003-03-03 Jason Merrill <jason@redhat.com>
+
+ * tree-inline.c (find_builtin_longjmp_call): Save and restore
+ lineno and input_filename.
+ (find_alloca_call): Likewise.
+ (inlinable_function_p): Run the langhook earlier.
+
+ * calls.c (compute_argument_addresses): Give the new MEMs a
+ minimum alignment of PARM_BOUNDARY.
+
+Mon Mar 3 20:45:25 2003 J"orn Rennecke <joern.rennecke@superh.com>
+
+ * config/sh/sh.h (EXTRA_SPECS): Add subtarget_asm_relax_spec and
+ subtarget_asm_isa_spec.
+ (SUBTARGET_ASM_RELAX_SPEC, SUBTARGET_ASM_ISA_SPEC): Define.
+ (ASM_SPEC): Define as SH_ASM_SPEC.
+ (SH_ASM_SPEC): New; take the role of ASM_SPEC, but safe from svr4.h.
+ Use subtarget_asm_relax_spec and subtarget_asm_isa_spec.
+ * config/sh/elf.h (ASM_SPEC): Use SH_ASM_SPEC.
+ (SUBTARGET_ASM_ISA_SPEC): Undef / define.
+
+ * sh.h (OVERRIDE_OPTIONS): Set default values for align_loops
+ and align_jumps if not set.
+ Force align_jumps to be at least 2.
+ When relaxing, force align_functions to be at least the maximum of
+ align_loops, align_jumps and 4.
+ * sh.c (find_barrier, barrier_align): Honour align_jumps_log.
+ (sh_loop_align): Honour align_loops_log.
+
+ * sh.md (length attribute): Use prev_nonnote_insn instead of PREV_INSN
+ to check for indirect_jump_scratch.
+ (indirect_jump_scratch): Add second set.
+ * sh.c (output_far_jump): Use prev_nonnote_insn instead of PREV_INSN
+ when looking for indirect_jump_scratch.
+ Extract scratch register taking new structure of indirect_jump_scratch
+ into account.
+ (gen_block_redirect): Set INSN_SCOPE for indirect_jump_scratch.
+
+Mon Mar 3 19:07:21 CET 2003 Jan Hubicka <jh@suse.cz>
+
+ * calls.c (rtx_for_function_call): Take the address as an argument
+ (expand_call): Do not modify the expression.
+
+ * toplev.c (rest_of_compilation): Avoid cfg_cleanup calls when not
+ optimizing.
+
+2003-03-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*ixorsi3_zext_hi): Restrict to
+ TARGET_H8300H and TARGET_H8300S.
+
+2003-03-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (a peephole2): New.
+
+2003-03-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (*extzv_8_8): Use shorter code when
+ operands[0] and operands[1] are different.
+
+2003-03-03 Kazu Hirata <kazu@cs.umass.edu>
+
+ * reload1.c (reload_cse_move2add): Remove variable success.
+
+2003-03-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * ggc-common.c (ggc_rlimit_bound): Cast RLIM_INFINITY to avoid
+ warnings.
+
+2003-03-02 Richard Henderson <rth@redhat.com>
+
+ * configure.in (HAVE_AS_LTOFFX_LDXMOV_RELOCS): New ia64 test.
+ * config.in, configure: Rebuild.
+ * config/ia64/ia64.c (ia64_ld_address_bypass_p): Accept lo_sum.
+ * config/ia64/ia64.md (load_symptr): Use high/lo_sum for the
+ paired ldtoffx and ldxmov annotations.
+ (load_symptr_internal1): Remove.
+ (load_symptr_high, load_symptr_low): New.
+
+2003-03-02 Neil Booth <neil@daikokuya.co.uk>
+
+ * c-incpath.c (add_path): Fix sysp assignment.
+
+2003-03-02 Kurt Garloff <garloff@suse.de>
+
+ * params.def: Introduce parameter max-inline-insns-rtl for
+ a separate limit for the RTL inliner.
+ * params.h: Likewise.
+ * integrate.c (function_cannot_inline_p): Use it.
+ * toplev.c (decode_f_option): Set multiple parameters
+ controlling inlining with -finline-limit.
+ * params.def: Fix orthographic and typographic errors.
+ * doc/invoke.texi: Document parameters controlling inlining
+ and the way -finline-limit sets multiple of them.
+
+ * tree.h (struct tree_decl): Introduce inlined_function_flag,
+ recording whether the function became eligible for inlining
+ by a compiler flag rather than the declaration.
+ Provide DID_INLINE_FUNC macro to access it.
+ * c-decl.c (grokdeclarator): Set DID_INLINE_FUNC.
+ * cp/decl.c (grokfndecl): Likewise.
+ * toplev.c (rest_of_compilation): Likewise.
+ * cp/optimize (maybe_clone_body): Copy DID_INLINE_FUNC.
+ * print-tree.c (print_node): Report it.
+ * params.def: Introduce new max-inline-insns-auto limit.
+ * params.h: Likewise.
+ * tree-inline.c (inlinable_function_p): Apply it to functions
+ with DID_INLINE_FUNC set.
+ * toplev.c (decode_f_option): Initialize it from -finline-limit
+ value.
+ * doc/invoke.texi: Document new parameter.
+
+2003-03-02 Geoffrey Keating <geoffk@apple.com>
+
+ * fix-header.c (read_scan_file): Don't reference simplify_path.
+
+2003-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_override_options): Don't enable
+ min/max instructions by default as may result in reload errors.
+
+2003-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.md ("mulqi3"): Allow address register to
+ avoid reload problems; define split for it.
+
+2003-03-02 Stephane Carrez <stcarrez@nerim.fr>
+
+ * config/m68hc11/m68hc11.c (m68hc11_shift_operator): New function.
+ * config/m68hc11/m68hc11-protos.h (m68hc11_shift_operator): Declare.
+ * config/m68hc11/m68hc11.h (PREDICATE_CODES): Register.
+ * config/m68hc11/m68hc11.md ("rotrhi3", "rotlhi3"): New patterns for
+ rotatert and rotate.
+ ("rotrhi3_const", "rotlhi3_const"): Rename of old 'rotrhi3' insns.
+ ("*rotrhi3", "*rotlhi3"): New insn pattern for non-const rotatert.
+ ("*rotrhi3_addr"): New split for shift insns on address register.
+ ("*lshrhi3", "*ashrhi3", "*ashlhi3_2"): Use new split.
+ * config/m68hc11/larith.asm (___rotlhi3): New asm function.
+ (___rotrhi3): Likewise.
+ * config/m68hc11/t-m68hc11-gas (LIB1ASMFUNCS): Build them.
+
+2003-03-02 Neil Booth <neil@daikokuya.co.uk>
+
+ * toplev.c (aux_base_name): Moved from toplev.h.
+ (filename): Constify.
+ (lang_dependent_init): Don't duplicate name.
+ (process_options): Set aux_base_name here, not...
+ (do_compile): ...here. Change protoype.
+ (toplev_main): Move some code from do_compile.
+ * toplev.h: Remove aux_base_name.
+
+2003-03-02 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300-protos.h: Add a prototype for
+ iorxor_operator.
+ * config/h8300/h8300.c (print_operand): Handle 'c'.
+ (iorxor_operator): New.
+ * config/h8300/h8300.h (PREDICATE_CODES): Add iorxor_operator.
+ * config/h8300/h8300.md (*iorhi3_zext): Remove.
+ (*iorsi3_zexthi): Likewise.
+ (*iorsi3_zextsi): Likewise.
+ (*xorhi3_zextqi): Likewise.
+ (*xorsi3_zexthi): Likewise.
+ (*xorsi3_zextsi): Likewise.
+ (*ixorhi3_zext): New.
+ (*ixorsi3_zext_qi): Likewise.
+ (*ixorsi3_zext_hi): Likewise.
+
2003-03-02 Neil Booth <neil@daikokuya.co.uk>
* c-incpath.c (remove_component_p, simplify_path): Move back to
2003-02-28 Joel Sherrill <joel@OARcorp.com>
PR 9638/other
- * config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Ensure the
+ * config/i386/i386.c (DEFAULT_PCC_STRUCT_RETURN): Ensure the
this constant defaults to 1.
2003-02-28 Bob Wilson <bob.wilson@acm.org>
2003-02-28 Richard Earnshaw <rearnsha@arm.com>
- * arm.md (mulhisi3, mulhisi3addsi, mulhidi3adddi): Enable for any
+ * arm.md (mulhisi3, mulhisi3addsi, mulhidi3adddi): Enable for any
ARMv5e processor, not just for XScale. Instructions are predicable.
(mulhisi3tb, mulhisi3bt, mulhisi3tt): New patterns for ARMv5e.
* config/arm/cirrus.md ("cirrus_fpu" attribute): Delete.
("cirrus_type" attribute): Delete - use "type" instead.
("cirrus" attribute): Replace 'no' with 'not' and 'yes' with
- 'normal'.
+ 'normal'.
Tue Feb 25 22:46:27 CET 2003 Jan Hubicka <jh@suse.cz>
entry.
(add_forward_dependence): New function.
(compute_forward_dependences): Use the function.
-
+
* sched-ebb.c (earliest_block_with_similiar_load): New function.
(add_deps_for_risky_insns): New function.
(schedule_ebb): Call the function.
* doc/extend.texi (Tru64 Pragmas): Reflect this.
* fixinc/inclhack.def (alpha___extern_prefix): Indicate #pragma
- extern_prefix support for Tru64 UNIX V5 <sys/stat.h>.
+ extern_prefix support for Tru64 UNIX V5 <sys/stat.h>.
* fixinc/fixincl.x: Regenerate.
* fixinc/tests/base/sys/stat.h [ALPHA___EXTERN_PREFIX_CHECK]: New
testcase.
Fixes PR c/5059, c/6126, other/9671.
-
+
2003-02-24 Roger Sayle <roger@eyesopen.com>
* gcc.c (do_spec_1) ['{']: Handle pending argument upon return