+2001-08-13 Andreas Jaeger <aj@suse.de>
+
+ * config.gcc: Use t-slibgcc-elf to build shared libgcc_s on
+ s390*linux.
+
+2000-08-13 Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
+
+ * dwarf2out.c (output_cfa_loc): Fix typo in comment.
+ * gcc.c (init_spec): Fix typo in comment.
+ * varasm.c (data_section): Fix typo in comment.
+
+Mon Aug 13 02:27:39 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * predict.c (dump_prediction): New argument "USED".
+ (combine_predictions_for_insn): Determine the used heuristics,
+ output the case no heuristic applied.
+ * predict.def (PRED_DS_THEORY, PRED_NO_HEURISTIC): New.
+
+2001-08-13 Andreas Jaeger <aj@suse.de>
+
+ * config/i386/unix.h (ASM_OUTPUT_MI_THUNK): Don't capitalize
+ register %rip.
+
+2001-08-13 Kazu Hirata <kazu@hxi.com>
+
+ * jump.c: Fix formatting.
+
+2001-08-13 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.md (zero_extendqihi2): Correct the insn
+ length.
+
+2001-08-12 Geoffrey Keating <geoffk@redhat.com>
+
+ * loop.c (check_dbra_loop): Use condjump_label to compute
+ jump_label.
+
+ * rtl.h: Move prototypes of rtx_alloc and rtvec_alloc around
+ to better document the files they're in.
+
+2001-08-12 Zack Weinberg <zackw@panix.com>
+
+ * recog.h (struct insn_operand_data): Shrink 'mode' field
+ to 16 bits.
+
+2001-08-12 Kazu Hirata <kazu@hxi.com>
+
+ * gcc.c: Fix comment formatting.
+ * gccspec.c: Likewise.
+ * gcov.c: Likewise.
+ * gcse.c: Likewise.
+ * genemit.c: Likewise.
+ * gengenrtl.c: Likewise.
+ * genrecog.c: Likewise.
+ * gensupport.c: Likewise.
+ * ggc-page.c: Likewise.
+ * global.c: Likewise.
+ * graph.c: Likewise.
+ * ifcvt.c: Likewise.
+ * integrate.c: Likewise.
+ * lcm.c: Likewise.
+ * libgcc2.c: Likewise.
+ * loop.c: Likewise.
+ * mbchar.c: Likewise.
+ * optabs.c: Likewise.
+ * predict.c: Likewise.
+ * prefix.c: Likewise.
+ * profile.c: Likewise.
+ * protoize.c: Likewise.
+ * real.c: Likewise.
+ * recog.c: Likewise.
+ * regclass.c: Likewise.
+ * regmove.c: Likewise.
+ * reg-stack.c: Likewise.
+ * reload1.c: Likewise.
+ * resource.c: Likewise.
+ * rtlanal.c: Likewise.
+ * rtl.c: Likewise.
+
+2001-08-12 Kazu Hirata <kazu@hxi.com>
+
+ * doc/tm.texi (ENCODE_SECTION_INFO): Add documentation on how
+ a tree representing a constant is passed to the macro.
+
+2001-08-12 Richard Henderson <rth@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_elf_asm_out_constructor): New.
+ (rs6000_elf_asm_out_destructor): New.
+ * config/rs6000/sysv4.h (CTORS_SECTION_ASM_OP): Remove.
+ (DTORS_SECTION_ASM_OP): Remove.
+ (TARGET_ASM_CONSTRUCTOR, TARGET_ASM_DESTRUCTOR): New.
+ (ASM_OUTPUT_INT): Don't hack TARGET_RELOCATABLE for constructors.
+
+2001-08-12 David Edelsohn <edelsohn@gnu.org>
+
+ Revert:
+ 2001-08-02 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+ * gcc.c (set_collect_gcc_options): New function, split out from
+ main.
+ Ignore elided switches.
+ (do_spec_1): Invoke before executing command.
+ (set_input): Export.
+ Move declaration ...
+ * gcc.h (set_input): ... here.
+ * config/alpha/osf.h (ASM_FINAL_SPEC): Use %U.s to refer to input
+ file.
+
+2001-08-12 Richard Henderson <rth@redhat.com>
+
+ * config/rs6000/rs6000.c (rs6000_elf_section_type_flags): Fix
+ thinko wrt TARGET_RELOCATABLE.
+
+2001-08-12 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * fix-header.c (cb_file_change): Update prototype.
+
+2001-08-11 Zack Weinberg <zackw@panix.com>
+
+ * toplev.c (set_float_handler): Make static.
+ * toplev.h: Don't prototype set_float_handler.
+
+ * simplify-rtx.c: Don't include setjmp.h.
+ (simplify_unary_real, simplify_binary_real, simplify_binary_is2orm1):
+ New functions.
+ (simplify_unary_operation, simplify_binary_operation): Use them,
+ via do_float_handler.
+
+ * fold-const.c: Don't include setjmp.h.
+ (exact_real_inverse_1): New function.
+ (exact_real_inverse): Use it, via do_float_handler.
+
+ * varasm.c: Don't include setjmp.h.
+ (assemble_real_1): New function.
+ (assemble_real): Use it, via do_float_handler.
+ Call internal_error if we get a trap here.
+
+ * c-parse.in, cse.c, cselib.c, config/i386/i386.c,
+ config/pj/pj.c, config/s390/s390.c: Don't include setjmp.h.
+
+2001-08-11 Zack Weinberg <zackw@panix.com>
+
+ * defaults.h: Define PREFERRED_STACK_BOUNDARY to
+ STACK_BOUNDARY if not already defined.
+
+ * calls.c, function.c, reload1.c, explow.c: Don't default
+ PREFERRED_STACK_BOUNDARY. Remove all #if/#ifdef on
+ PREFERRRED_STACK_BOUNDARY and/or STACK_BOUNDARY.
+
+ * explow.c (allocate_dynamic_stack_space): Change unsafe #if
+ to run-time test.
+
+ * doc/tm.texi: Document that STACK_BOUNDARY is required;
+ clarify difference between it and PREFERRED_STACK_BOUNDARY.
+
+2001-08-11 Neil Booth <neil@daikokuya.demon.co.uk>
+
+ * cppmacro.c (enter_macro_context): Push macro expansions even
+ if empty.
+
+2001-08-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * config/rs6000/rs6000.c: Include integrate.h to silence warning.
+ (rs6000_elf_section_type_flags): Actually return a value.
+
+2001-08-11 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * s390.c, s390.h, s390.md, s390-protos.h, linux.h, t-linux:
+ Clean up code: add missing comments and prototypes, fix warnings,
+ remove obsolete code, fix spacing to conform to coding style.
+
+2001-08-11 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * config/s390/s390.c (targetm): Define TARGET_ASM_OPEN_PAREN
+ and TARGET_ASM_CLOSE_PAREN.
+ (regclass_map): CC register belongs to class NO_REGS.
+ (legitimize_pic_address): Don't generate unnecessary moves
+ (to avoid confusing loop optimization).
+ (check_and_change_labels): Replace jump_long by indirect_jump.
+ (s390_final_chunkify): Don't start a new literal pool on section
+ switch in 64-bit code.
+ (s390_va_start, s390_va_arg): Fixed incorrect sizes for 64-bit.
+
+ * config/s390/s390.h (TARGET_SWITCHES): Renamed debug_arg to debug.
+ (MAX_BITS_PER_WORD, MAX_LONG_TYPE_SIZE): Set to 64 (for 64-bit).
+ (HARD_REGNO_MODE_OK, RETURN_IN_MEMORY): Support complex integer
+ modes correctly.
+ (reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Remove CC_REGS.
+ (EH_RETURN_HANDLER_RTX): Fixed incorrect offset for 64-bit.
+ (CONST_COSTS): Fixed incorrect costs.
+
+ * config/s390/s390.md (fixuns_trunc[sd]f[sd]i2, udivsi3, umodsi3):
+ Use emit_jump instead of emit_jump_insn (gen_jump).
+ (divsi3, modsi3): Clobber low word of divmoddisi3 before shifting
+ (to avoid confusing flow analysis).
+ (tablejump, tablejump1, tablejump2): Removed. Replaced by casesi.
+ (casesi, casesi_jump): New.
+ (jump_long): Removed. Functionality merged into indirect_jump.
+ (indirect_jump): Accept address_operand, not just register_operand.
+ (cjump_long, icjump_long): Use same logic as indirect_jump.
+ (builtin_setjmp_setup, builtin_setjmp_receiver, builtin_longjmp):
+ Fixed broken setjmp/longjmp handling.
+ (do_builtin_setjmp_setup): Removed.
+
+ * config/s390/linux.h (ASM_OUTPUT_DOUBLE_INT): Work around
+ broken GNU as versions that don't accept .quad with large
+ negative values. Use hexadecimal output instead.
+ (ASM_OUTPUT_ADDR_DIFF_ELT): Adapt to new casesi insn.
+ (ASM_OPEN_PAREN, ASM_CLOSE_PAREN, FUNCTION_PROLOGUE,
+ FUNCTION_EPILOGUE): Removed. Now in targetm.
+
+ * config/s390/linux64.h (CALL_USED_REGISTERS): Add CC register.
+
+ * config/s390/fixdfdi.h: Add missing copyright statement.
+ Fix type conflicts on 64-bit. Add missing SFmode routines.
+
+ * s390.c, s390.h, s390.md, linux.h, linux64.h: Fixed incorrect
+ email address.
+
+2001-08-11 Richard Henderson <rth@redhat.com>
+
+ * rtl.h (REG_EH_RETHROW): Remove.
+ * rtl.c (reg_note_name): Update.
+ * combine.c (distribute_notes): Don't check for it.
+
+2001-08-11 Richard Henderson <rth@redhat.com>
+
+ * combine.c (distribute_notes): Place REG_SETJMP.
+
+2001-08-11 Richard Henderson <rth@redhat.com>
+
+ * doc/extend.texi (Arrays and pointers implementation): Discourage
+ relying on sign-extension of pointers.
+
+2001-08-11 H.J. Lu <hjl@gnu.org>
+
+ * config/mips/linux.h (EXTRA_SECTIONS): Remove in_ctors and
+ in_dtors.
+ (EXTRA_SECTION_FUNCTIONS): Remove DTORS_SECTION_ASM_OP and
+ RDATA_SECTION_ASM_OP.
+
+2001-08-11 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/install.texi (Specific, c4x): Fix cross-reference to the
+ main manual to work both for info and HTML versions.
+
+2001-08-11 Neil Booth <neil@daikokuya.demon.co.uk>
+ Matt Kraai <kraai@alumni.carnegiemellon.edu>
+
+ * cpphash.c (_cpp_destroy_hashtable): Use ht_destroy.
+ * cpphash.h (CPP_IN_SYSTEM_HEADER): Fix.
+ (struct cpp_pool): New member first.
+ * cppinit.c (append_include_chain): Plug memory leaks.
+ * cpplib.c (cpp_register_pragma, cpp_register_pragma_space):
+ Allocate pragma structures from the (aligned) macro pool to
+ avoid leaking memory.
+ * cpplex.c (_cpp_init_pool, _cpp_free_pool): Use pool->first
+ so we don't leak memory.
+ * hashtable.c (ht_destroy): New.
+ * hashtable.h (ht_destroy): New.
+
+2001-08-11 Neil Booth <neil@daikokuya.demon.co.uk>
+ Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ * c-lex.c (map): Make const.
+ (cb_file_change): Update for callback passing a line map.
+ Don't assume we have a previous map. Remove sanity check
+ about popping too many files.
+ * cpperror.c (print_location): Make map const.
+ * cppfiles.c (stack_include_file): Update; line maps now hold sysp.
+ (cpp_make_system_header): Similarly.
+ (search_from): Similarly.
+ (_cpp_execute_include): Don't remember where we came from.
+ * cpphash.h (struct cpp_buffer): Remove return_to_line, sysp.
+ (struct cpp_reader): Make map const.
+ (CPP_IN_SYSTEM_HEADER, _cpp_do_file_change): Update.
+ * cpplib.c (do_line): Update; line maps now hold sysp.
+ (cpp_push_buffer): Similarly.
+ (_cpp_do_file_change): Similarly; callback with map instead.
+ (cpp_get_line_maps): Constify return value.
+ (_cpp_pop_buffer): Update.
+ * cpplib.h (struct cpp_file_change): Remove.
+ (struct cpp_callbacks): Update.
+ (cpp_get_line_maps): Constify return value.
+ * cppmacro.c (_cpp_create_definition): Update.
+ * cppmain.c (struct printer): Constify map.
+ (maybe_print_line): Similarly.
+ (print_line): Similarly. Deduce flags 1 and 2 here.
+ (cb_file_change): Update.
+ * line-map.c (free_line_maps): Warn regardless.
+ (add_line_map): Return pointer to const. When passed NULL to_file
+ with LC_LEAVE, use the obvious values for the return point so the
+ caller doesn't have to figure them out.
+ (lookup_line): Return pointer to const.
+ (print_containing_files): Take pointer to const.
+ * line-map.h (struct line_map): New members reason, sysp.
+ (add_line_map): Return pointer to const.
+ (lookup_line): Similarly.
+ (print_containing_files): Take pointer to const.
+
+2001-08-10 Roman Zippel <zippel@linux-m68k.org>
+ Richard Henderson <rth@redhat.com>
+
+ * regmove.c (regmove_optimize): Avoid setting a register twice in
+ a parallel set.
+
+2001-08-10 Richard Henderson <rth@redhat.com>
+
+ * doc/extend.texi (Arrays and pointers implementation): Document
+ behavior of pointer/integer conversion.
+
+2001-08-10 Ulrich Weigand <uweigand@de.ibm.com>
+
+ * glimits.h (__LONG_MAX__): Add s390x as 64-bit architecture.
+
+2001-08-10 Richard Henderson <rth@redhat.com>
+
+ * doc/extend.texi (C Implementation): New chapter.
+ * doc/gcc.texi (Top): Link it in.
+
+2001-08-10 Andrew Cagney <ac131313@redhat.com>
+
+ * doc/install.texi (Specific): Fix CVS merge botch.
+
+2001-08-10 Richard Henderson <rth@redhat.com>
+
+ * config/m68k/m68k.c (m68k_svr3_asm_out_constructor): Protect with
+ ifdef CTOR_LIST_BEGIN instead of INIT_SECTION_ASM_OP.
+
+2001-08-10 Zack Weinberg <zackw@stanford.edu>
+
+ * calls.c, function.c: Always define PREFERRED_STACK_BOUNDARY
+ if not already defined. Remove all #ifdefs on STACK_BOUNDARY;
+ this macro is now required.
+
+ * cselib.c (cselib_process_insn), flow.c (propagate_block),
+ loop.c (find_and_verify_loops), reload.c (reload): Check
+ for rtx code of CALL_INSN, not CALL, when deciding if we
+ need to check for REG_SETJMP note.
+
+ * gcse.c (compute_hash_table, compute_store_table): Update
+ the #ifdef NON_SAVING_SETJMP code to the new REG_SETJMP
+ logic.
+
+ * config/avr/avr.c: Fix typo.
+ * config/convex/convex.c (expand_movstr): Use adjust_address.
+ * config/dsp16xx/dsp16xx.c: Define dsp16xx_compare_gen
+ variable.
+ * config/dsp16xx/dsp16xx.md: Correct calls to replace_equiv_address.
+ * config/elxsi/elxsi.c: Include tree.h, expr.h, regs.h, and flags.h.
+ Fix typo.
+ * config/elxsi/elxsi.h: Don't define Rmode (typo for Pmode?)
+ Do define STACK_BOUNDARY.
+ * config/i370/i370.c: Include expr.h.
+ * config/i860/sysv3.h, config/i860/sysv4.h, config/m32r/m32r.h,
+ config/pa/som.h, config/v850/v850.h: Take in_ctors and
+ in_dtors out of EXTRA_SECTIONS; take CTORS_SECTION_FUNCTION
+ and DTORS_SECTION_FUNCTION out of EXTRA_SECTION_FUNCTIONS.
+ * config/m88k/m88k.c: Include c-tree.h after expr.h.
+ * config/pdp11/pdp11.c: Include expr.h and toplev.h.
+ * config/romp/romp.c: Include expr.h after tree.h.
+ Include toplev.h.
+ (output_fpop): Use xmalloc, not oballoc.
+ * config/we32k/we32k.c: Include expr.h.
+
+2001-08-10 Kazu Hirata <kazu@hxi.com>
+
+ * config/h8300/h8300.h: Fix formatting.
+
+2001-08-08 Jason Merrill <jason_merrill@redhat.com>
+
+ * c-common.h (RETURN_NULLIFIED_P): Lose.
+ * c-semantics.c (genrtl_return_stmt): Don't check it.
+
+2001-08-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (mips_add_large_offset_to_sp): New function.
+ (mips_annotate_frame_insn): New function.
+ (mips_emit_frame_related_store): New function.
+ (save_restore_insns): Don't mark instructions that set up the base
+ registers as frame-related. Add REG_FRAME_RELATED_EXPR notes to
+ the store instructions instead.
+ (mips_expand_prologue): If the stack size is moved into a temporary
+ register, do not mark that move as frame-related. Add a
+ REG_FRAME_RELATED_EXPR note to the stack adjustment instruction.
+
+2001-08-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.c (save_restore_insns): Don't mark the RA's
+ stack slot as unchanging if current_function_calls_eh_return.
+
+2001-08-10 Richard Sandiford <rsandifo@redhat.com>
+
+ * config/mips/mips.md (reload_outcc): Use HARD_REGNO_NREGS to
+ access the second half of the TFmode scratch operand.
+
+2001-08-10 Anthony Green <green@redhat.com>
+
+ * java/class.c (emit_register_classes): Conditionalize code on
+ JCR_SECTION_NAME.
+
+2001-08-10 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
+
+ * doc/install.texi (Specific, avr): Fix cross-reference to the
+ main manual to work both for info and HTML versions.
+
+2001-08-09 John David Anglin <dave@hiauly1.hia.nrc.ca>
+
+ * stmt.c (expand_null_return_1): Remove code to generate simple returns
+ and "use_goto" argument.
+ (expand_null_return, expand_value_return): Update all callers.
+ * function.c (expand_function_end): Remove code to generate simple
+ return.
+ * config/vax/vax.md (epilogue): New expander for function return.
+ * doc/md.texi (epilogue): Remove "if defined".
+
2001-08-09 Zack Weinberg <zackw@stanford.edu>
* Makefile.in: Partially revert my previous change:
(ASM_OUTPUT_CONSTRUCTOR, ASM_OUTPUT_DESTRUCTOR): Remove.
(TARGET_ASM_CONSTRUCTOR, TARGET_ASM_DESTRUCTOR): New.
* config/c4x/c4x.c: Move include of tree.h.
- * config/clipper/clipper.c (clix_asm_out_constructor): New.
+ * config/clipper/clipper.c (clix_asm_out_constructor): New.
(clix_asm_out_destructor): New.
* config/clipper/clix.h (ASM_OUTPUT_CONSTRUCTOR): Remove.
(ASM_OUTPUT_DESTRUCTOR): Remove.
* flow.c (backward_edge_of_syntactic_loop_p): Avoid uninitialized
variable access.
+2001-07-26 Andrew Haley <aph@redhat.com>
+ Joern Rennecke <amylaar@redhat.com>
+
+ * config/sh/linux.h (CPP_DEFAULT_CPU_SPEC): New.
+ (SUBTARGET_CPP_ENDIAN_SPEC): New.
+ (SUBTARGET_CPP_SPEC): New.
+ (CPP_SPEC): Remove.
+ * config/sh/sh.h (SUBTARGET_CPP_ENDIAN_SPEC): New.
+ (SUBTARGET_CPP_PTR_SPEC): New.
+ (CPP_DEFAULT_CPU_SPEC): New.
+ (EXTRA_SPECS): Add SUBTARGET_CPP_ENDIAN_SPEC,
+ SUBTARGET_CPP_PTR_SPEC, and CPP_DEFAULT_CPU_SPEC.
+ (CPP_SPEC): Break out parts into SUBTARGET_CPP_ENDIAN_SPEC,
+ SUBTARGET_CPP_PTR_SPEC, and CPP_DEFAULT_CPU_SPEC.
+ (SUBTARGET_CPP_SPEC): Define as an empty string.
+
2001-07-27 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at>
* doc/install.texi (Configuration): Properly link the host