| 2000-12-31 Philip Blundell <philb@gnu.org> |
| |
| * config/arm/linux-gas.h (CLEAR_INSN_CACHE): Add missing asm |
| operands. |
| |
| 2000-12-30 Richard Henderson <rth@redhat.com> |
| |
| * dbxout.c (dbxout_block): Invert logic on eliding LBRAC/RBRAC. |
| Initialize variables properly for DBX_LBRAC_FIRST. |
| |
| 2000-12-30 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * expr.c (expand_expr, case COMPONENT_REF): Fix typo in last change. |
| |
| 2000-12-30 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * builtins.c (validate_arglist): New function, use it. |
| |
| 2000-12-30 Philip Blundell <philb@gnu.org> |
| |
| * config/arm/arm.c (arm_expand_prologue): Fix typos in error |
| message and comment. Note location of testcase for an unhandled |
| situation. |
| |
| 2000-12-30 Jeffrey Oldham <oldham@codesourcery.com> |
| |
| * defaults.h (BUILD_VA_LIST_TYPE): New definition. |
| * tree.c (build_common_tree_nodes_2): Ensure the va_list_type_node |
| is a copy, not an alias. |
| |
| 2000-12-30 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * calls.c (calls_function_1, case CONSTRUCTOR): New case. |
| |
| * alias.c (alias_sets_conflict_p): New function. |
| (mems_in_disjoint_alias_sets_p): Use it. |
| (readonly_fields_p): Moved from expr.c; check for record type. |
| (objects_must_conflict_p): New function. |
| * calls.c (expand_call): Use assign_temp as much as possible, use |
| readonly variant if assigned once, and don't set memory attributes. |
| (emit_library_call_value_1, store_one_arg): Likewise. |
| * integrate.c (expand_inline_function): Likewise. |
| * stmt.c (expand_asm_operands, expand_return): Likewise. |
| * expr.c (copy_blkmode_from_reg, store_constructor): Likewise. |
| (store_field, save_noncopied_parts, expand_expr): Likewise. |
| (expand_expr_unaligned): Likewise. |
| (readonly_fields_p): Moved to alias.c. |
| (safe_from_p): Rework handling of SAVE_EXPR. |
| MEMs ony conflict if alias sets conflict; likewise for INDIRECT_REF. |
| * function.c (struct temp_slot): Delete field ALIAS_SET; add TYPE. |
| (assign_stack_for_temp): Use objects_must_confict_p. |
| Set all memory attributes from type, if specified. |
| (mark_temp_slot): Mark TYPE field. |
| * tree.h (alias_sets_conflict_p, readonly_fields_p): New decls. |
| (objects_must_conflict_p): Likewise. |
| |
| * stmt.c (expand_decl): Don't use assign_stack_temp in error case. |
| (add_case_node): No need to copy nodes anymore. |
| |
| 2000-12-30 Alexandre Oliva <aoliva@redhat.com> |
| |
| * config/sh/sh.c (split_branches): Don't dereference re-computed |
| `beyond' before checking it's non-NULL. |
| |
| 2000-12-29 Robert Lipe <robertl@sco.com> |
| |
| Remove COFF support from i?86-pc-sco3.2v5. |
| * i386/sco5.h (PREFERRED_DEBUGGING_TYPE): Change to Dwarf II. |
| (TARGET_ELF): Now always true. |
| (SUBTARGET_SWTICHES: )Remove -mcoff. |
| |
| * i386/t-sco5 (MULTILIB_OPTIONS, MULTILIB_DIRNAMES, |
| MULTILIB_EXCEPTION): Nuke coff. |
| (CRTSTUFF_T_CFLAGS_S): Deleted. |
| (TARGET_LIBGCC2_CFLAGS): Added. |
| |
| 2000-12-29 Alexandre Oliva <aoliva@redhat.com> |
| |
| * varasm.c (output_constant_def): Don't ENCODE_SECTION_INFO |
| twice. Update desc->rtl and ->label, in case ENCODE_SECTION_INFO |
| modifies them. |
| |
| 2000-12-29 Bernd Schmidt <bernds@redhat.com> |
| |
| * ia64.c (ia64_expand_load_address): Accept additional scratch |
| register argument. All callers & prototype changed. |
| Use scratch register when generating load_symptr insns. |
| * ia64.md (movdi_symbolic): Clobber a scratch register. Use it |
| when calling ia64_expand_load_address. |
| (movdi): Generate movdi_symbolic with additional operand. |
| (load_gprel64): Use pic_offset_table_rtx instead of (reg:DI 1). |
| (load_symptr): Likewise. Use additional operand as a scratch |
| register instead of generating it here. |
| |
| * basic-block.h: Add a comment. |
| * flow.c (PROP_POSTRELOAD): New macro. |
| (update_life_info): Add it to prop_flags. |
| (mark_set_1): If it is set, compute REG_N_SETS for the original |
| register number of a hard reg. |
| |
| * emit-rtl.c (gen_raw_REG): New function. |
| (gen_rtx_REG, gen_reg_rtx, init_emit_once): Use it instead of |
| gen_rtx_raw_REG. |
| * print-rtl.c (print_rtx): Print ORIGINAL_REGNO. |
| * final.c (alter_subreg): Update it. |
| * regrename.c (do_replace): Likewise. Use gen_raw_REG. |
| * rtl.def (REG): Update comment. |
| * rtl.h (X0UINT, ORIGINAL_REGNO): New macros. |
| (gen_raw_REG): Declare. |
| |
| 2000-12-29 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * tree.c (get_set_constructor_bits): Use host_integerp and |
| tree_low_cst. |
| |
| * local-alloc.c (update_equiv_regs): Don't use copy_rtx on PATTERN. |
| |
| * toplev.c (main): Call xmalloc_set_program_name. |
| * gcc.c (main): Likewise. |
| |
| 2000-12-29 Philip Blundell <philb@gnu.org> |
| |
| * config/arm/arm.c (arm_override_options): Fix typo in warning |
| message. |
| |
| 2000-12-29 Richard Henderson <rth@redhat.com> |
| |
| * config/alpha/alpha.c (alpha_expand_block_move): Initialize |
| src_align and dst_align in bits. Do unaligned quadword loads |
| if possible for BWX too. |
| (alpha_expand_block_clear): Initialize align in bits. Track |
| small leading offsets into a larger alignment. Play games with |
| stq_u for large 4-byte aligned blocks. Use load/mask/store |
| for appropreately aligned heads and tails. |
| |
| 2000-12-29 Alexandre Oliva <aoliva@redhat.com> |
| |
| * function.c (assign_parms): Convert arguments passed by |
| reference to the right mode. |
| |
| 2000-12-28 Geoffrey Keating <geoffk@redhat.com> |
| |
| * c-parse.in (select_or_iter_stmt): Use truthvalue_conversion |
| on the condition of a FOR statement, so that it gets typechecked |
| and optimized. |
| |
| 2000-12-29 Alexandre Oliva <aoliva@redhat.com> |
| |
| * c-decl.c (grokdeclarator): Prevent crash in case of overflow in |
| array size. |
| |
| * calls.c (emit_library_call_value_1): Add to call_fusage the |
| stack slot assigned to argument passed by reference. |
| |
| 2000-12-28 Jeffrey Oldham <oldham@codesourcery.com> |
| |
| * toplev.h (extern really_sorry): Remove extern declaration for |
| nonexistent function. |
| |
| 2000-12-28 Jeffrey Oldham <oldham@codesourcery.com> |
| |
| * varasm.c (initializer_constant_valid_p): Indicate subtraction of |
| pointers to the same string constant is absolute. |
| |
| 2000-12-28 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-common.c (enum format_type): Add strfmon_format_type. |
| (decl_attributes): Handle format attributes strfmon and |
| __strfmon__. |
| (FMT_FLAG_USE_DOLLAR, FMT_FLAG_ZERO_WIDTH_BAD, |
| FMT_FLAG_EMPTY_PREC_OK): Define. |
| (format_char_info): Update comment for flag_chars. |
| (format_flag_spec): Add skip_next_char. |
| (format_kind_info): Add left_precision_char. |
| (printf_flag_specs, scanf_flag_specs, strftime_flag_specs, |
| format_types): Update for these new structure members and flags. |
| (time_char_table): Make const. |
| (strfmon_length_specs, strfmon_flag_specs, strfmon_flag_pairs, |
| monetary_char_table): New. |
| (format_types): Add details of strfmon formats. |
| (init_function_format_info): Create default attribute for strfmon. |
| (check_format_info_main): Check the new flags. Handle |
| skip_next_char and left precision. |
| * toplev.c (documented_lang_options): Update description of |
| -Wformat. |
| * extend.texi: Document strfmon format attributes. Document |
| attribute forms such as __printf__. Clarify format_arg attribute |
| documentation. |
| * invoke.texi (-Wformat): Update for strfmon formats. |
| |
| 2000-12-28 Andreas Jaeger <aj@suse.de> |
| |
| * expmed.c (store_bit_field): Fix last patch. |
| |
| 2000-12-28 Alexandre Oliva <aoliva@redhat.com> |
| |
| * config/sh/crt1.asm (start_l): `__SH4_SINGLE_ONLY__' was missing |
| the trailing `__'. |
| |
| 2000-12-28 Alan Lehotsky <lehotsky@tiac.net> |
| |
| * expmed.c (store_bit_field): Correctly compute smallest mode that |
| is sufficient to contain all bits we are storing. |
| |
| 2000-12-27 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * builtins.c (build_function_call_expr): New function. Use it |
| everywhere in lieu of manually constructing a CALL_EXPR. |
| |
| 2000-12-27 Chandrakala Chavva <cchavva@redhat.com> |
| |
| * calls.c (store_one_arg): If parm is passed both in stack and in |
| register and offset is greater than reg_parm_stack_space, split |
| the offset and call emit_push_insn(). |
| |
| 2000-12-27 Nick Clifton <nickc@redhat.com> |
| |
| * ifcvt.c (noce_emit_store_flag): Handle jump insns that are |
| PARALLEL. |
| |
| 2000-12-27 Alexandre Oliva <aoliva@redhat.com> |
| |
| * rtl.c (copy_most_rtx, shallow_copy_rtx): Copy frame_related |
| flag. |
| |
| 2000-12-27 Bruce Korb <bkorb@gnu.org> |
| |
| * fixinc/Makefile.in: fix for ancient Bourne shell |
| * fixinc/Makefile.BEOS: obsolete |
| * fixinc/Makefile.DOS: obsolete |
| * fixinc/fixincl.sh(LINKS): use `test -d' rather than `ls' for testing |
| |
| 2000-12-27 Bernd Schmidt <bernds@redhat.com> |
| |
| * sched-deps.c (get_condition, conditions_mutex_p): New functions. |
| (add_dependence): Use them to avoid adding unnecessary dependencies |
| between conditionally executed insns. |
| (sched_analyze_1, sched_analyze_2, sched_analyze_insn): Don't free |
| dependency lists if current insn is a COND_EXEC. |
| |
| 2000-12-27 Geoffrey Keating <geoffk@redhat.com> |
| |
| * config/rs6000/rs6000.md (define_attr "length"): Correct |
| calculation. |
| |
| 2000-12-26 Kazu Hirata <kazu@hxi.com> |
| |
| * config/h8300/h8300.c: Fix a comment typo. |
| (get_shift_alg): Fix a typo in the assembly code for 12-bit |
| ASHIFTRT in HImode. Do not output extra whitespace after one line |
| of assembly code. Output a tab after an opcode instead of a |
| space. |
| (emit_a_shift): Output a tab after an opcode instead of a space. |
| |
| 2000-12-23 Marek Michalkiewicz <marekm@linux.org.pl> |
| |
| * config/avr/avr.c (out_movqi_r_mr, out_movhi_r_mr, out_movsi_r_mr, |
| out_movsi_mr_r, out_movqi_mr_r, out_movhi_mr_r): Use %o instead of |
| %4 in output templates, do not modify operands passed by the caller. |
| |
| 2000-12-23 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * builtins.def (BUILT_IN_LABS, BUILT_IN_LLABS, BUILT_IN_IMAXABS): |
| Don't define. |
| * builtins.c (expand_builtin): Don't handle BUILT_IN_LABS, |
| BUILT_IN_LLABS and BUILT_IN_IMAXABS. |
| * c-common.c (c_common_nodes_and_builtins): Use BUILT_IN_ABS for |
| builtin labs, llabs and imaxabs. |
| (expand_tree_builtin): Don't handle BUILT_IN_LABS, BUILT_IN_LLABS |
| and BUILT_IN_IMAXABS. |
| |
| 2000-12-23 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-common.c (builtin_function_2): New function. |
| (c_common_nodes_and_builtins): Use it to define each pair (foo, |
| __builtin_foo) of builtins in one place. |
| |
| 2000-12-22 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * gccbug.in: Add libgcj and preprocessor categories. |
| |
| 2000-12-22 Bernd Schmidt <bernds@redhat.com> |
| |
| * config/ia64/ia64.c (itanium_reorder): Only schedule stops in |
| the final scheduling pass. |
| |
| 2000-12-22 Nick Clifton <nickc@redhat.com> |
| |
| * config/arm/arm.h (struct machine_function): Add new field |
| 'lr_save_eliminated'. |
| * config/arm/arm.c (arm_compute_save_reg_mask): Do not include the |
| link register if its save has been eliminated. |
| (output_arm_prologue): Mention if the save of the link register |
| has been eliminated. |
| (output_arm_epilogue): Rename 'live_regs_mask' to |
| 'saved_regs_mask'. |
| Test 'saved_regs_mask' for the link register, not regs_ever_live. |
| (arm_expand_prologue): If the link register has not been saved set |
| lr_save_eliminated and emit a USE to prevent later passes from |
| scavenging it. |
| |
| * dwarf2out_frame_debug_expr: Allow the (scratch) frame |
| pointer to be initialized from the stack pointer plus a |
| constant. |
| |
| 2000-12-22 Bernd Schmidt <bernds@redhat.com> |
| |
| * regrename.c (struct du_chain): New field "earlyclobber". |
| (enum scan_actions): Remove unused entry "note_reference". |
| (enum scan_actions_name): Likewise. |
| (note_sets, clear_dead_regs, merge_overlapping_regs): New static |
| functions. |
| (regrename_optimize): Use them to compute unavailable regs; get |
| rid of the more simpleminded code we used to have here. |
| Use a tick array to ensure registers are allocated in a more |
| round-robin way. Disable code that only optimizes registers |
| that were seen more than once. |
| (referenced_regs): Remove variable. |
| (scan_rtx_reg): New arg "earlyclobber". All callers changed. |
| Store its value in newly generated du_chain structures. |
| Add new du_chains at the end, not the start, of the list. |
| Don't handle the "note_reference" action. |
| (scan_rtx): New arg "earlyclobber". All callers changed. |
| (build_def_use): Lose code to keep track of referenced regs. |
| |
| 2000-12-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * Makefile.in (sched-deps.o, sched-rgn.o): Fix dependency typo. |
| |
| * fp-bit.h (usi_to_float): Add prototype. |
| |
| * i386.c (ix86_expand_builtin): Delete unused label. |
| |
| * dwarf2out.c (file_info_cmp): Prototype. |
| (dwarf2out_line): Hide variable `old_in_use'. |
| |
| * objc-act.c (objc_fatal): Delete. |
| |
| * sched-vis.c (visualize_stall_cycles): Remove unused variable. |
| |
| * system.h (getopt): Fix error in last change. |
| |
| * varasm.c (assemble_trampoline_template): Constify. |
| |
| 2000-12-22 Jason Merrill <jason@redhat.com> |
| |
| * collect2.c (main): Use auto_demangling. |
| |
| 2000-12-22 Alexandre Oliva <aoliva@redhat.com> |
| |
| * function.c (assign_parms): Update parm's DECL_INCOMING_RTL |
| when optimizing PARALLEL to REG. |
| |
| 2000-12-22 Graham Stott <grahams@redhat.com> |
| |
| * reload.c (update_auto_inc_notes): New, broken out from ... |
| (find_reloads_address_1): ... use here, also correct possible |
| use of uninitialized reloadnum. |
| |
| 2000-12-21 David O'Brien <obrien@FreeBSD.org> |
| |
| * config/freebsd.h (LIB_SPEC): remove -kthread option. |
| |
| 2000-12-22 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
| |
| * resource.c (mark_set_resources): Use MARK_SRC_DEST for |
| PRE_MODIFY and POST_MODIFY cases. |
| |
| * rtlanal.c (side_effects_p): Handle PRE_MODIFY and POST_MODIFY. |
| |
| 2000-12-22 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
| |
| * md.texi (Looping Patterns): New node. |
| |
| 2000-12-21 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * gcc.texi, cpp.texi: Update last-updated dates. |
| |
| 2000-12-21 Chandrakala Chavva <cchavva@redhat.com> |
| |
| * varasm.c (output_addressed_constants): Use language specific |
| expander on unknown nodes. |
| |
| 2000-12-21 Graham Stott <grahams@redhat.com> |
| |
| * combine.c (distribute_notes): Handle REG_NON_LOCAL_GOTO notes. |
| |
| 2000-12-21 Bernd Schmidt <bernds@redhat.com> |
| |
| * Makefile.in (out_object_file): Depend on sched-int.h. |
| * rtl.h (single_set_1): New macro. |
| (single_set_2): Renamed from single_set_1 and extra argument added. |
| * rtlanal.c (single_set_2): Likewise. |
| |
| * config/ia64/ia64-protos.h (get_bundle_name, ia64_issue_rate, |
| ia64_adjust_cost, ia64_sched_init, ia64_sched_finish, |
| ia64_sched_reorder, ia64_sched_reorder2, ia64_variable_issue): |
| Declare. |
| * config/ia64/ia64.c: Include "sched-int.h". |
| (hard_regno_rename_ok): Also disallow renaming from the various |
| reg_save_* regs. |
| (ia64_safe_itanium_requiers_unit0, ia64_safe_itanium_class, |
| ia64_safe_type, init_insn_group_barriers, group_barrier_needed_p, |
| safe_group_barrier_needed_p, fixup_errata): New static functions. |
| (rtx_needs_barrier): Handle bundle selector and cycle display |
| insns. |
| (emit_insn_group_barriers): Accept additional FILE * arg. All |
| callers changed. Rework to only generate stop bits between |
| basic blocks that haven't been inserted by scheduling. |
| (struct bundle, struct ia64_packet): New structures. |
| (NR_BUNDLES, NR_PACKETS): New macros. |
| (bundle, packets, type_names): New static arrays. |
| (ia64_final_schedule): New variable. |
| (ia64_single_set, insn_matches_slot, ia64_emit_insn_before, |
| gen_nop_type, finish_last_head, rotate_one_bundle, rotate_two_bundles, |
| cycle_end_fill_slots, packet_matches_p, get_split, find_best_insn, |
| find_best_packet, itanium_reorder, dump_current_packet, schedule_stop): |
| New static functions. |
| (ia64_issue_rate, ia64_sched_init, ia64_sched_reorder, |
| ia64_sched_finish, ia64_sched_reorder2, ia64_variable_issue): New |
| functions. |
| (ia64_reorg): Perform a final scheduling pass. |
| * config/ia64/ia64.h (CONST_COSTS): Slightly increase SYMBOL_REF costs. |
| (MAX_CONDITIONAL_EXECUTE, ADJUST_COST, ISSUE_RATE, MD_SCHED_INIT, |
| MD_SCHED_REORDER, MD_SCHED_REORDER2, MD_SCHED_FINISH, |
| MD_SCHED_VARIABLE_ISSUE): Define macros. |
| (ia64_final_schedule): Declare variable. |
| * config/ia64/ia64.md (attr itanium_class): Add some more classes. |
| (attr type): Account for them. |
| (itanium_requires_unit0): New attribute. |
| (function units): Rewrite. |
| (some splitters): Don't create scheduling barriers here. |
| (gr_spill_internal, gr_restore_internal): Don't predicate the |
| pseudo-op. |
| (nop_m, nop_i, nop_f, nop_b, nop_x, cycle_display, cycle_display_1, |
| bundle_selector): New patterns. |
| (insn_group_barrier): Now has an operand. |
| |
| 2000-12-21 DJ Delorie <dj@redhat.com> |
| |
| * dwarf2out.c (simple_decl_align_in_bits): new |
| (field_byte_offset): Try both the type align and the |
| decl align, use whichever works, preferring the type align. |
| |
| 2000-12-21 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * gccbug.in: Fix typo. |
| |
| 2000-12-20 Benjamin Kosnik <bkoz@redhat.com> |
| |
| * Makefile.in (gcc_gxx_target_include_dir): Use instead of |
| build_tooldir and libstdcxx_incdir. |
| |
| 2000-12-20 Robert Lipe <robertlipe@usa.net> |
| |
| * haifa-sched.c (schedule_block): Provide empty source statement |
| if not MD_SCHED_REORDER2. |
| |
| 2000-12-20 Richard Henderson <rth@redhat.com> |
| |
| * rtl.h (REG_NON_LOCAL_GOTO): New. |
| * rtl.c (reg_note_name): Update. |
| * stmt.c (expand_goto): Emit a REG_NON_LOCAL_GOTO note. |
| * builtins.c (expand_builtin_longjmp): Likewise. |
| * flow.c (make_edges): Check for REG_NON_LOCAL_GOTO and do |
| not emit an edge. |
| |
| 2000-12-20 Marek Michalkiewicz <marekm@linux.org.pl> |
| |
| * config/avr/avr.c (out_movsi_r_mr, out_movsi_mr_r, out_movhi_mr_r): |
| Do not output undefined opcodes where source or destination register |
| overlaps with modified pointer register. Handle (X + d) addresses. |
| * config/avr/avr.md (*movhi, *movsi, *movsf): Correct insn length |
| in alternatives with memory operand. |
| |
| 2000-12-20 Richard Henderson <rth@redhat.com> |
| |
| * c-typeck.c (build_asm_stmt): New, broken out from ... |
| (c_expand_asm_operands): ... here. Just do rtl expansion. |
| (c_expand_return): Return the new stmt node. |
| (c_start_case, do_case): Likewise. |
| * c-common.c (c_expand_expr_stmt): Likewise. |
| * c-common.h: Update declarations. |
| * c-tree.h: Likewise. |
| * c-semantics.c (build_stmt): Use STMT_LINENO not TREE_COMPLEXITY. |
| * c-parse.in (fndef): Set DECL_SOURCE_LINE to the open brace. |
| (nested_function, notype_nested_function): Likewise. |
| (compstmt): Return the compound statement not the binding level. |
| (lineno_labeled_stmt): Simplify. |
| (lineno_stmt, lineno_label): Set STMT_LINENO. |
| (stmt, label): Return the new stmt node. |
| |
| 2000-12-20 Bernd Schmidt <bernds@redhat.com> |
| |
| * Makefile.in (OBJS): Add sched-ebb.o. |
| (sched-ebb.o): New rule. |
| (sched-vis.o): Depend on hard-reg-set.h and $(BASIC_BLOCK_H). |
| (haifa-sched.o): Depend on insn-flags.h. |
| * haifa-sched.c: Include "insn-flags.h". |
| (priority): Don't access BLOCK_NUM, use the new contributes_to_priority |
| callback. |
| * rtl.h (schedule_ebbs): Declare. |
| * sched-int.h (struct sched_info): Add new members |
| contributes_to_priority and compute_jump_reg_dependencies. |
| * sched-rgn.c (contributes_to_priority, compute_jump_reg_dependencies): |
| New functions. |
| (region_sched_info): Add them. |
| * sched-vis.c: Include "hard-reg-set.h" and "basic-block.h". |
| * sched-ebb.c: New file. |
| * sched-deps.c (sched_analyze_insn): Add code to handle JUMP_INSNs. |
| |
| * flow.c (ior_reg_cond, and_reg_cond, elim_reg_cond): Properly |
| handle all relational operators. |
| |
| 2000-12-20 Alexandre Oliva <aoliva@redhat.com> |
| |
| * final.c (output_addr_const): Use ASM_OUTPUT_SYMBOL_REF. |
| * tm.texi: Document it. |
| |
| 2000-12-19 Benjamin Kosnik <bkoz@redhat.com> |
| |
| * Makefile.in (-DGPLUSPLUS_TOOL_INCLUDE_DIR): Use build_tooldir |
| instead of gcc_tooldir. |
| |
| 2000-12-19 John David Anglin <dave@hiauly1.hia.nrc.ca> |
| |
| * system.h (getopt): Update prototype to match include/getopt.h. |
| |
| 2000-12-19 John David Anglin <dave@hiauly1.hia.nrc.ca> |
| |
| From Jeff Law. |
| * pa.c (basereg_operand): Simplify. |
| |
| 2000-12-19 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * haifa-sched.c (rm_line_notes): Arguments are now head and tail, |
| not block number. All callers and prototype changed. |
| (set_priorities): Likewise. |
| (save_line_notes): Add head and tail arguments; all callers and |
| prototype changed. |
| (restore_line_notes): Likewise. Don't crash on insns generated |
| during scheduling. |
| (schedule_block): Don't use BLOCK_HEAD/BLOCK_END macros. |
| Call MD_SCHED_INIT with additional argument. |
| When starting a new cycle, emit cycle_display insns if available. |
| Don't stop scheduling when encountering a JUMP_INSN, but add another |
| call to schedule_more_p in the inner loop. |
| Call MD_SCHED_REORDER2 after scheduling an insn. |
| Call MD_SCHED_FINISH once all insns are scheduled. |
| (sched_init): Compensate for the fact that get_block_head_tail |
| doesn't include leading notes. |
| * sched-deps.c (free_deps): Free vectors here. |
| * sched-rgn.c (compute_block_backward_dependencies): Not here. |
| (last_was_jump): New static variable. |
| (schedule_more_p): Test it. |
| (init_ready_list): Initialize it. |
| (can_schedule_ready_p): Set it if we have a JUMP_INSN. |
| |
| * config/i386/i386.h (MD_SCHED_INIT): Add new arg. |
| * config/m32r/m32r.h (MD_SCHED_INIT): Add new arg. |
| * config/sparc/sparc.h (MD_SCHED_INIT): Add new arg. |
| |
| * md.texi (cycle_display): Document. |
| * tm.texi (MD_SCHED_INIT): Document new arg. |
| (MD_SCHED_FINISH, MD_SCHED_REORDER2): Document. |
| |
| * flow.c (ior_reg_cond, nand_reg_cond, not_reg_cond): Rewrite |
| to use different representation. All callers changed. |
| (and_reg_cond): Renamed from nand_reg_cond; caller changed. |
| (init_propagate_block_info): Don't test flags to determine |
| whether to compute conditional lifetimes. |
| Adjust code for new representation of conditional lifetimes. |
| (mark_regno_cond_dead): Similar adjustment. |
| (free_reg_cond_life_info): Similar adjustment. |
| (elim_reg_cond): New function. |
| (flush_reg_cond_1): Use it. |
| |
| 2000-12-19 Catherine Moore <clm@redhat.com> |
| |
| * reload1.c (reload_combine): Take multi-hard-regs into account |
| when processing CALL_INSN_FUNCTION_USAGE. |
| |
| 2000-12-19 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * invoke.texi (-print-search-dirs): Make references to cpp refer |
| to cpp0 instead. |
| |
| 2000-12-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * fold-const.c (tree_expr_nonnegative_p): Treat truth values as |
| non-negative. |
| |
| Tue Dec 19 00:37:08 2000 J"orn Rennecke <amylaar@redhat.com> |
| |
| * reload.c (push_reload): When using a dying register for the reload |
| register in an in-out reload, use outmode if wider than inmode. |
| |
| 2000-12-19 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * config/d30v/d30v.h (EXIT_BODY): Update comment. |
| |
| 2000-12-18 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * config.gcc (*-*-linux*): Don't define HAVE_ATEXIT or BSTRING. |
| * tm.texi (EXIT_BODY): Update documentation. |
| * config/freebsd.h, config/netware.h, config/arm/coff.h, |
| config/arm/conix-elf.h, config/arm/unknown-elf.h, |
| config/d30v/d30v.h, config/mcore/mcore.h, config/pj/pj.h, |
| sparc/sp86x-aout.h: Remove definitions of HAVE_ATEXIT (some |
| commented out) and associated comments. |
| |
| 2000-12-18 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-common.c (STD_C9L, ADJ_STD): Define. |
| (printf_length_specs, scanf_length_specs): Mark "ll" as standard |
| STD_C9L. |
| (T99_LL): Rename to T9L_LL. |
| (T99_ULL): Rename to T9L_ULL. |
| (print_char_table, scan_char_table): Use T9L_LL and T9L_ULL |
| instead of T99_LL and T99_ULL. |
| (check_format_info_main): Use ADJ_STD on all format standard |
| versions being compared. |
| * c-common.h: Declare warn_long_long. |
| * c-tree.h: Don't declare warn_long_long. |
| |
| 2000-12-18 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * COPYING: Update to current |
| ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes references |
| to 19yy as example year in copyright notice). |
| |
| 2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * c-lex.c (cb_file_change): Treat in_system_header as strictly |
| boolean (0 or 1). |
| |
| 2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * cppmain.c: Update print.lineno with -P. |
| |
| 2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * c-lex.c: s/change_file/file_change. |
| * cpplib.h: Similarly. |
| * cppmain.c: Similarly. |
| * fix-header.c: Similarly. |
| * cppfiles.c (stack_include_file): Pass the buffer location and |
| size to cpp_push_buffer. Generate the file_change callback, |
| so that sysp is already set. |
| * cpphash.h: Add _cpp_do_file_change. |
| * cpplib.c (do_line): Set buffer->sysp directly. Generate the |
| file_change callback after setting sysp. |
| (_cpp_do_file_change): Handle FC_ENTER and the FC_RENAME exception |
| here. |
| (cpp_push_buffer): Don't generate a callback. Clear sysp. |
| (cpp_pop_buffer): Clean up logic. |
| |
| 2000-12-18 Benjamin Kosnik <bkoz@redhat.com> |
| |
| * configure.in (gcc_gxx_include_dir): Simplify. |
| (libstdcxx_incdir): Export. |
| * configure: Regenerate. |
| * Makefile.in (PREPROCESSOR_DEFINES): Add in |
| GPLUSPLUS_TOOL_INCLUDE_DIR bits here.. |
| (libstdcxx_incdir): Add. |
| * cppdefault.c (GPLUSPLUS_TOOL_INCLUDE_DIR): Add search path. |
| |
| 2000-12-18 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * c-lex.c (lex_lineno): Remove. |
| (init_c_lex, c_lex): Remove lex_lineno. |
| (cb_change_file): Update lineno correctly, both before calling |
| push_srcloc and before leaving the function. |
| (cb_def_pragma): Set lineno before outputting diagnostics. |
| |
| Sun Dec 17 18:45:41 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * print-tree.c (print_node): Print DECL_USER_ALIGN and TYPE_USER_ALIGN. |
| Print TYPE_MIN_VALUE and TYPE_MAX_VALUE for REAL_TYPE. |
| Use print_node_brief to print bounds. |
| |
| 2000-12-17 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * cpplib.h (struct cpp_reader): Remove references to string_pool |
| and temp_string_pool. |
| * cppinit.c (cpp_create_reader, cpp_cleanup): Similarly; using |
| ident_pool in place. |
| * cpplex.c (parse_number, unescaped_terminator_p, parse_string, |
| save_comment, cpp_token_as_text): Similarly. |
| * cpplib.c (do_define, glue_header_name, parse_assertion): Similarly. |
| * cppmacro.c (make_number_token, builtin_macro, lock_pools, |
| unlock_pools, stringify_arg, paste_tokens): Similarly. |
| |
| Sun Dec 17 12:41:48 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * dwarf2out.c (loc_descriptor_from_tree, case NOP_EXPR): New case. |
| (loc_descriptor_from_tree, case CONVERT_EXPR): Likewise. |
| (loc_descriptor_from_tree, case NON_LVALUE_EXPR): Likewise. |
| |
| 2000-12-17 Richard Earnshaw <rearnsha@arm.com> |
| |
| * Makefile.in (check-po): Use $(MAKE). |
| (risky-stage1, risky-stage2, risky-stage3, risky-stage4): Likewise. |
| |
| 2000-12-17 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * cppmain.c (check_multiline_token): New function. |
| (scan_buffer): Use it. |
| (cb_change_file): Restructure to avoid warning. |
| * cpperror.c (print_location): Initialize col. |
| |
| 2000-12-14 Philipp Thomas <pthomas@suse.de> |
| |
| * protoize.c (main): Correctly set locale categories. |
| * gcc.c (main): Likewise. |
| * cppmain.c (general_init): Likewise. |
| * toplev.c (main): Likewise. |
| * gcov.c (main): Likewise. |
| * collect2.c (main): Likewise. |
| |
| 2000-12-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * c-common.c (c_common_nodes_and_builtins): Create a |
| cstring_endlink, use it. Rename int_ftype_string_string to |
| int_ftype_cstring_cstring, string_ftype_string_int to |
| string_ftype_cstring_int, and string_ftype_string_string to |
| string_ftype_cstring_cstring. Prefer sizetype_endlink and |
| int_endlink to manually recreating them. Fix the prototype |
| set for __builtin_strspn/__builtin_strcspn. |
| |
| 2000-12-12 Marek Michalkiewicz <marekm@linux.org.pl> |
| |
| * config/avr/avr.c (out_set_stack_ptr): Update comment. |
| (print_operand): Add support for %~ and %o. |
| |
| 2000-12-17 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
| |
| * c4x.h: Add ASM_OUTPUT_DEF definition for bounded pointer code. |
| |
| 2000-12-17 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * c-lex.c: Move main_input_filename handling to FC_ENTER. Clean up. |
| * cpperror.c (print_containing_files): Get right line number. |
| (print_location): Output column of 1 if 0. |
| * cppfiles.c (stack_include_file): cpp_push_buffer handles |
| the callback. |
| * cpphash.h (_cpp_do_file_change): No longer external. |
| * cpplib.c (do_file_change): Now local to cpplib.c. |
| (do_line): Fake a buffer stack for preprocessed files. |
| (cpp_push_buffer): Create a file_change callback. Handle faked |
| buffers. |
| (cpp_pop_buffer): Similarly. |
| * cpplib.h: BUF_FAKE: New buffer type. |
| * cppmain.c: Update to handle correct file renaming where a |
| #line is the first line of the main file, and produce only |
| the renamed file, not the original file, as output. |
| |
| 2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
| |
| * config/c4x/c4x.md: Remove redundant @s from output patterns. |
| |
| 2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
| Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
| |
| * config/c4x/c4x.h (REGISTER_TARGET_PRAGMAS): Call c4x_init_pragma. |
| |
| * config/c4x/c4x-protos.h (c4x_init_pragma): New prototype. |
| |
| * config/c4x/c4x.c (c4x_init_pragma): New function. |
| (c_lex_func): New variable. |
| (c4x_parse_pragma): Use c_lex_func. |
| |
| 2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
| Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
| |
| * config/c4x/c4x.h (MD_INIT_BUILTINS): Add void_list_node argument |
| to c4x_init_builtins. |
| |
| * config/c4x/c4x-protos.h (c4x_init_builtins): Add tree argument. |
| |
| * config/c4x/c4x.c (c4x_init_builtins): Add tree argument. |
| (c4x_output_ascii): Fix. |
| |
| 2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
| Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
| |
| * config/c4x/c4x.h (MD_INIT_BUILTINS, MD_EXPAND_BUILTIN): Define. |
| |
| * config/c4x/c4x-protos.h (c4x_init_builtins): New prototype. |
| (c4x_expand_builtin): Likewise. |
| |
| * config/c4x/c4x.c (c4x_init_builtins): New function. |
| (c4x_expand_builtin): Likewise. |
| |
| * config/c4x/c4x.md (floatunsqihf2): New pattern. |
| (*floatqihf2_set, *fixhfqi_set, fix_trunchfqi2): Likewise. |
| (fixuns_trunchfqi2, toieee, frieee, *ldhf_conditional): Likewise. |
| (*ldhf_conditional_noov, movhfcc, trap, cond_trap_cc): Likewise. |
| (*toieee_movqf_clobber, *frieee_movqf_clobber): Likewise. |
| |
| 2000-12-17 Michael Hayes <m.hayes@elec.canterbury.ac.nz> |
| |
| * libgcc2.h: Use Wtype for SItype and DWtype for DItype in prototypes. |
| * libgcc2.c (__absvsi2): Use Wtype and DWtype. |
| (__absvdi2, __addvsi3, __addvdi3, __subvsi3): Likewise. |
| (__subvdi3, __mulvsi3, __mulvdi3, __negvsi2, __negvdi2): Likewise. |
| |
| 2000-12-16 Alexandre Oliva <aoliva@redhat.com> |
| |
| * config/sh/sh.h (INITIALIZE_TRAMPOLINE): Enclose the block |
| statement in do/while(0). |
| |
| Sat Dec 16 19:56:24 MET 2000 Jan Hubicka <jh@suse.cz> |
| |
| * i386.md (ashrsi3_cmpno, ashrhi3_cmpno, ashrqi3_cmpno, lshrsi3_cmpno, |
| lshrhi3_cmpno): Remove redundant '@' from the template. |
| |
| * i386.md (cmpstrsi_1): Fix type of the compare. |
| |
| * genattrtab.c (attr_rtx_cost): New function. |
| (simplify_test_exp): Avoid overactive inlining; use temporary |
| obstacks for tests. |
| |
| Sat Dec 16 10:41:11 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * diagnostic.c (finish_abort): Deleted. |
| (fatal): Add code from finish_abort. |
| (error_recursion, fancy_abort): Call fatal, not finish_abort. |
| (trim_filename): Remove leading "../". |
| * diagnostic.h (finish_abort): Deleted. |
| * toplev.c (crash_signal): Call fatal, not finish_abort. |
| |
| * stor-layout.c (place_field): Treat overflowing DECL_SIZE_UNIT |
| as if size were variable. |
| |
| * expmed.c (expand_mult): Write REG_EQUAL note with proper mode. |
| |
| 2000-12-16 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * tradcpp.c: T_WARNING: New. |
| (do_warning): New function. |
| (finclude): Skip past the newline and increase the line number |
| before calling output_line_command. |
| (do_line): Skip the new line after output_line_command. Don't |
| pre-decrement the line number. |
| |
| 2000-12-15 Diego Novillo <dnovillo@redhat.com> |
| |
| * i386/unix.h (ASM_OUTPUT_MI_THUNK): Fix references to |
| _GLOBAL_OFFSET_TABLE_ when using Intel syntax. |
| |
| 2000-12-15 Jakub Jelinek <jakub@redhat.com> |
| |
| * gcc.c (cpp_options): Pass -fno-operator-names. |
| * cpplib.h (struct cpp_options): Add operator_names. |
| * cppinit.c (cpp_create_reader): Initialize it. |
| (initialize_builtins): If -fno-operator-names, don't add |
| C++ alternate operator names. |
| (COMMAND_LINE_OPTIONS): Add -fno-operator-names. |
| (cpp_handle_option): Clear operator_names. |
| |
| 2000-12-15 Jason Merrill <jason@redhat.com> |
| |
| * jump.c (jump_optimize_1): Don't delete the line note after the |
| prologue even if it seems redundant. |
| |
| * config/arm/arm.c (arm_expand_prologue): Set RTX_FRAME_RELATED_P |
| on all insns used to adjust the stack. |
| |
| Fri Dec 15 15:32:16 MET 2000 Jan Hubicka <jh@suse.cz> |
| |
| * combine.c (cant_combine_insn_p): Get around SUBREGs when determining |
| hardreg<->reg moves. |
| |
| Fri Dec 15 14:48:37 MET 2000 Jan Hubicka <jh@suse.cz> |
| |
| * genrecog.c (add_to_sequence): Remove special case for |
| const_int_operand. |
| (maybe_both_true): Return 1 when falling out of sequence when |
| trying to find common position in the pattern. |
| |
| Fri Dec 15 14:44:51 MET 2000 Jan Hubicka <jh@suse.cz> |
| |
| * integrate.c (copy_rtx_and_substitute): Copy mode too. |
| |
| Fri Dec 15 14:11:57 MET 2000 Jan Hubicka <jh@suse.cz> |
| |
| * flow.c (notice_stack_pointer_modification_1): Cleanup. |
| |
| 2000-12-15 Alexandre Oliva <aoliva@redhat.com> |
| |
| * function.c (adjust_trampoline_addr): New function. |
| (trampoline_address): Call it instead of round_trampoline_addr(). |
| * tm.texi (TRAMPOLINE_ADJUST_ADDRESS): Document it. |
| |
| 2000-12-14 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * cppfiles.c (hack_vms_include_specification): Delete function |
| (not used since 1998). |
| |
| Fri Dec 15 03:37:51 2000 J"orn Rennecke <amylaar@redhat.com> |
| |
| * haifa-sched.c (sched_init): Don't put a note in front of any BARRIER. |
| |
| 2000-12-14 Jim Wilson <wilson@redhat.com> |
| |
| * alias.c (get_alias_set): Call record_component_aliases for |
| COMPLEX_TYPE. |
| (record_component_aliases): Handle COMPLEX_TYPE. |
| |
| 2000-12-14 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * fixinc/gnu-regex.c: Disable NLS. |
| |
| 2000-12-14 Richard Henderson <rth@redhat.com> |
| |
| * config/alpha/alpha.c (alpha_emit_conditional_move): Do not swap |
| comparison operands when that would create non-canonical rtl. |
| |
| * config/i386/i386.md (umulsi3_highpart): Remove * from name. |
| (smulsi3_highpart): Likewise. |
| |
| 2000-12-14 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * gcc.c (cpp_options): Add -remap. |
| |
| 2000-12-14 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * gcc.c (cpp_options): Update to use '&'. |
| (struct switchstr): Change type of validated to save space. |
| New member 'ordering'. |
| (handle_braces, validate_switches): Update to handle '&'. |
| |
| 2000-12-13 Laurynas Biveinis <lauras@softhome.net> |
| |
| * fixinc/inclhack.def: skip stdio_va_list fix if __DJ_va_list |
| found in a header. |
| * fixinc/fixincl.x: regenerated. |
| |
| 2000-12-13 DJ Delorie <dj@redhat.com> |
| |
| * config.gcc (cygwin, win32, mingw32): Use float-i386.h. |
| |
| 2000-12-13 Tom Tromey <tromey@redhat.com> |
| |
| * gcc.c (handle_braces): Handle %{<S*} spec correctly. |
| |
| 2000-12-13 Alexandre Oliva <aoliva@redhat.com> |
| |
| * function.c (assign_parms): Optimize incoming PARALLELs into |
| REGs if possible. |
| |
| 2000-12-13 Bruce Korb <bkorb@gnu.org> |
| |
| * fixinc/Makefile.in(*): substantial rewrite to accommodate systems |
| that cannot handle bi-directional pipes, viz. BeOS and DOS. |
| * fixinc/fixlib.h(IGNORE_ARG): new macro |
| (STATIC): define for all of fixinc to use |
| * fixinc/fixfixes.c(*): eliminate unused arg warnings |
| * fixinc/fixtests.c(*): ditto |
| * fixinc/fixincl.c(start_fixer): chain_open now uses const arg list |
| * fixinc/gnu-regex.c: reorder some includes to avoid _GNU_SOURCE |
| warning. Also, eliminate the ``#ifdef emacs'' stuff. |
| (re_syntax_options): make global as it is declared so. |
| * fixinc/mkfixinc.sh: process the argument list more consistently |
| (beos/msdosdjgpp): set TARGETS to twoprocess vs. oneprocess |
| * fixinc/procopen.c(globals): include "fixlib.h" for std defs |
| * fixinc/server.c(globals): ditto |
| * fixinc/server.h(defines): ditto |
| |
| 2000-12-13 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * tradcpp.c (special_symbol): Improve test for definedness, |
| though it is still not perfect. |
| (do_define): Don't define illegal macro names. |
| |
| 2000-12-07 Aldy Hernandez <aldyh@redhat.com> |
| |
| * config/mips/elf.h (ASM_OUTPUT_SECTION_NAME): emit @nobits |
| if changing into .bss section. |
| * config/mips/elf64.h: same. |
| * config/mips/iris6.h: same. |
| * config/mips/netbsd.h: same. |
| * config/mips/openbsd.h: same. |
| |
| 2000-12-13 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * cppfiles.c (read_name_map): Return null if open () fails. |
| (remap_filename): Simplify logic. Add ICE if it doesn't work |
| as expected. Perform secondary lookup attempt on base filename |
| only. |
| |
| Wed Dec 13 19:48:04 MET 2000 Jan hubicka <jh@suse.cz> |
| |
| * flow.c (notice_stack_pointer_modification_1): Notice midifications |
| using PRE_MODIFY and POST_MODIFY. |
| |
| Wed Dec 13 17:25:32 MET 2000 Jan Hubicka <jh@suse.cz> |
| |
| * genoutput.c (process_template): Add sanity checking for '@' templates. |
| |
| 2000-12-13 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * simplify-rtx.c (cselib_finish): Free reg_values and used_regs |
| varrays. |
| |
| 2000-12-12 Mike Stump <mrs@wrs.com> |
| |
| * Makefile.in (distclean): Remove safe-ctype.c as well. |
| |
| 2000-12-12 Brad Lucier <lucier@math.purdue.edu> |
| |
| * tradcpp.c (do_error): Cast difference of pointers to int |
| for error message. |
| |
| 2000-12-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
| |
| * config/rs6000/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Move from here... |
| * config/rs6000/sysv4.h (HANDLE_PRAGMA_PACK_PUSH_POP): ...to here. |
| |
| 2000-12-12 Jim Wilson <wilson@redhat.com> |
| |
| * rtlanal.c (may_trap_p): Check operand modes of LE, LT, GE, and GT. |
| |
| 2000-12-12 Alexandre Oliva <aoliva@redhat.com> |
| |
| * configure.in: Simplify language enabling/disabling code. |
| * configure: Rebuilt. |
| * ch/config-lang.in (target_libs): Set. |
| (build_by_default): Set to no. |
| * cp/config-lang.in (target_libs): Set. |
| * f/config-lang.in (target_libs): Set. |
| * java/config-lang.in (target_libs): Set. |
| * objc/config-lang.in (target_libs): Set. |
| |
| 2000-12-12 Neil Booth <neil@daikokuya.demon.co.uk> |
| |
| * tradcpp.c (enum node_type): Add T_ERROR. |
| (do_error): New function. |
| (directive_table): Add #error handler. |
| |
| 2000-12-12 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
| |
| * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): Enable .file/.loc check |
| for powerpc*-*-*. |
| * configure: Regenerated. |
| * config/rs6000/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define. |
| * config/rs6000/rs6000.c (rs6000_unique_section): Use |
| STRIP_NAME_ENCODING. |
| |
| Mon Dec 11 13:51:09 2000 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.c (cmpib_comparison_operator): Remove GEU and LTU. |
| * pa.h (PREDICATE_CODES, cmpib_comparison_operator): Corresponding |
| changes. |
| |
| 2000-12-11 Bruce Korb <bkorb@gnu.org> |
| |
| * fixinc/fixincl.tpl: initialize all fields for warnings |
| * fixinc/fixincl.x: regenerate |
| |
| 2000-12-11 Neil Booth <neilb@earthling.net> |
| |
| * tradcpp.h: For tradcpp, NUL is not whitespace. |
| |
| 2000-12-11 Neil Booth <neilb@earthling.net> |
| |
| * fix-header.c (read_scan_file): Macro expansion is not a file buffer. |
| |
| 2000-12-05 Marek Michalkiewicz <marekm@linux.org.pl> |
| |
| * config/avr/avr.c (compare_condition, compare_sign_p): New functions. |
| (compare_diff_p, compare_eq_p): Call compare_condition. |
| (out_tsthi, out_tstsi): Call compare_sign_p. |
| (avr_progmem_p): Check for error_mark_node. |
| |
| 2000-12-11 Neil Booth <neilb@earthling.net> |
| |
| * cpperror.c (print_location): New function. |
| (print_containing_files): Simplify. |
| (_cpp_begin_message): Simplify and use print_location. |
| * cppfiles.c (stack_include_file): Update. |
| (_cpp_pop_file_buffer): Update. |
| * cpphash.h (struct cpp_buffer): New members |
| include_stack_listed and type. |
| * cpplib.c (_cpp_handle_directive): Buffer->inc is not null. |
| (run_directive): Take buffer type. cpp_push_buffer cannot fail. |
| (_cpp_do__Pragma, cpp_define, _cpp_define_builtin, cpp_undef, |
| handle_assertion): Update. |
| (cpp_push_buffer): Take a buffer type and file name. |
| (cpp_pop_buffer): Update. Clear include_stack_listed. |
| * cpplib.h (input_stack_listing_current): Remove. |
| (enum cpp_buffer_type): New. |
| (cpp_push_buffer): New prototype. |
| * cppmacro.c (builtin_macro): Simplify; buffer cannot be null. |
| * fix-header.c (read_scan_file): Update. |
| |
| 2000-12-10 Robert Lipe <robertlipe@usa.net> |
| |
| * install.texi (i*86-*-sco3.2v5*): Remove information duplicated |
| in html version. |
| |
| 2000-12-10 Richard Henderson <rth@redhat.com> |
| |
| * genrecog.c (find_operand): Handle 'V' format code. |
| (find_matching_operand): New. |
| (validate_pattern): Accept '=' for an in-out operand if there |
| is another operand with a matching constraint. |
| |
| * config/i386/i386.md (andqi_ext_0_cc): Use matching constraint |
| for op1 to op0. |
| |
| 2000-12-10 Richard Henderson <rth@redhat.com> |
| |
| * genrecog.c (validate_pattern) [STRICT_LOW_PART]: Fix thinko. |
| |
| 2000-12-09 Richard Henderson <rth@redhat.com> |
| |
| * genrecog.c (validate_pattern): Verify that ZERO_EXTRACT and |
| STRICT_LOW_PART as SET_DEST have in-out constraints. |
| |
| 2000-12-09 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-common.c (check_function_format): Don't suggest adding format |
| attributes to functions with no parameter to which to add them. |
| |
| 2000-12-09 Nick Clifton <nickc@redhat.com> |
| |
| * config/arm/arm.c (arm_expand_prologue): Mark the generated |
| insn not the set as being DWARF2_FRAME_RELATED_P. |
| |
| 2000-12-09 Laurynas Biveinis <lauras@softhome.net> |
| |
| * Makefile.in: use $(build_exeext) for all build |
| system executable targets. |
| |
| 2000-12-09 Laurynas Biveinis <lauras@softhome.net> |
| |
| * install.texi: remove i[345]86-*-winnt3.5 section. |
| * configur.bat: removed. |
| * config/msdos: directory removed. |
| |
| 2000-12-09 Neil Booth <neilb@earthling.net> |
| |
| * cppfiles.c (NEVER_REREAD, DO_NOT_REREAD): Move from cpphash.h. |
| * cpphash.h (NEVER_REREAD, DO_NOT_REREAD, ABSOLUTE_PATH): Delete. |
| * cpplex.c (parse_identifier): Improve diagnostic. |
| (_cpp_lex_token): Return unconditionally at the end of a directive. |
| * cpplib.c (read_flag): Verify legality of each flag. |
| (end_directive): Resotre pfile->skipping before skip_rest_of_line. |
| (do_line): Use the new read_flag. |
| * cppmacro.c (struct cpp_macro, parse_arg, replace_args, |
| check_macro_redefinition, parse_params): Rename var_args to |
| variadic. |
| |
| 2000-12-09 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * .cvsignore: Add info files. |
| |
| 2000-12-08 Laurynas Biveinis <lauras@softhome.net> |
| |
| * config/winnt: Remove obsolete directory. |
| * install.texi (Configurations): Remove obsolete documentation for |
| Windows NT. |
| |
| 2000-12-08 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * configure.in: Don't define INSTALL_INFO. |
| * configure: Regenerate. |
| * Makefile.in (INSTALL_INFO): Remove. |
| (info): Depend on info files in source directory. |
| (cpp.info, gcc.info, c-tree.info): Build info files in source |
| directory. |
| (distclean): Don't remove info files. |
| (maintainer-clean): Remove info files from source directory. |
| (install-normal): Depend on install-info. |
| (install-info): Install info files from source directory, if they |
| exist. |
| * texinfo.tex: Update to version 2000-11-09.08 from ftp.gnu.org. |
| |
| 2000-12-08 Alexandre Oliva <aoliva@redhat.com> |
| |
| * lcm.c (optimize_mode_switching): Check whether an insn is a NOTE |
| before taking its NOTE_LINE_NUMBER. |
| |
| 2000-12-08 Nick Clifton <nickc@redhat.com> |
| |
| * config/arm/arm.md (load_indirect_jump): Add pool ranges. |
| |
| * extend.texi: Document ARM "interrupt" function attribute. |
| Mention that the ARM also support the "naked" function |
| attribute. |
| |
| * config/arm/arm-protos.h (arm_current_func_type): Add |
| prototype. |
| |
| * config/arm/arm.h (EXCEPTION_LR_REGNUM): Define. |
| (struct machine_function): Add 'func_type' field. |
| Define bit values for 'func_type' field. |
| (ARM_FUNC_TYPE): New macro. |
| (IS_INTERRUPT): New macro. |
| (IS_VOLATILE): New macro. |
| (IS_NAKED): New macro. |
| (IS_NESTED): New macro. |
| (ARM_INITIAL_ELIMINATION_OFFSET): Use IS_VOLATILE. |
| |
| * config/arm/arm.c (isr_attribute_args): New Structure. A |
| list of "interrupt" function attribute modifiers. |
| (arm_isr_value): New Function: Returns the type of the current |
| interrupt function. |
| (arm_compute_func_type): New Function: Computes the type of |
| the current function. |
| (arm_current_func_type): New Function: Returns the type of the |
| current function. |
| (use_return_insn): Use arm_current_func_type. |
| (arm_valid_type_attribute_p): Accept "interrupt" function |
| attribute. |
| (arm_comp_type_attributes): Check "interrupt" attributes. |
| (arm_valid_machine_decl): Accept "interrupt" function |
| attribute. |
| (arm_function_ok_for_sibcall): Do not allow interrupt |
| functions to use sibcalls. |
| (arm_naked_function_p): Delete. |
| (print_multi_reg): Remove redundant parameter 'hat'. |
| (arm_compute_save_reg_mask): New Function: Compute a bit mask |
| of registers saved during the current function's prologue. |
| (output_arm_return_instruction): Use arm_current_func_type. |
| Generate return instruction when LR is not poppsed off the |
| stack. |
| (arm_volatile_func): Delete. |
| (output_arm_prologue): Use arm_current_func_type and |
| arm_compute_save_reg_mask. |
| Note presernce of interrupt functions. |
| (arm_output_epilogue): Use arm_current_func_type and |
| arm_compute_save_reg_mask. |
| (arm_expand_prologue): Use arm_current_func_type and |
| arm_compute_save_reg_mask. |
| (arm_init_machine_status): Initialize func_type field, if |
| necessary. |
| (thumb_expand_prologue): Use arm_current_func_type. |
| (output_thumb_prologue): Use arm_current_func_type. |
| |
| 2000-12-08 Brad Lucier <lucier@math.purdue.edu> |
| |
| * tradcpp.c (do_include): Make pointer differences 64-bit clean. |
| |
| Fri Dec 8 08:23:29 2000 J"orn Rennecke <amylaar@redhat.com> |
| |
| * fp-bit.c (_fpmul_parts): Use USItype variables as inputs |
| for multiplies. |
| |
| 2000-12-07 Mike Stump <mrs@wrs.com> |
| |
| * Makefile.in (distclean): Remove alloca.c hashtab.c. |
| |
| 2000-12-07 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * Makefile.in (HOST_RTL): Add safe-ctype.o. |
| (safe-ctype.o): New rule. |
| * system.h: Include safe-ctype.h, not ctype.h. No need to |
| wrap ctype macros. |
| |
| * cpphash.h: Zap IStable and related macros. Define is_* in |
| terms of safe-ctype.h macros. |
| * cppinit.c: Delete the IStable and all related code. |
| |
| * tradcpp.c: Delete is_idchar, is_idstart, is_hor_space, and |
| is_space arrays. Delete initialize_char_syntax. Change all |
| references to the above arrays to use macros instead. |
| * tradcpp.h: Define is_idchar, is_idstart, is_space, and |
| is_nvspace in terms of safe_ctype.h's macros. |
| * tradcif.y: is_idchar, is_idstart are macros not arrays. |
| |
| * config/i370/i370.c, config/winnt/dirent.c, |
| config/winnt/fixinc-nt.c, config/winnt/ld.c: |
| Use uppercase ctype macros. If we included ctype.h, |
| include safe-ctype.h instead. |
| |
| * fixinc/fixfixes.c: Use uppercase ctype macros. Don't test |
| ISLOWER(c) before calling TOUPPER(c). |
| * fixinc/fixincl.c (extract_quoted_files): Simplify out some gunk. |
| * fixinc/gnu-regex.c: Include safe-ctype.h, not ctype.h. No need to |
| wrap ctype macros. Don't test ISUPPER(x) before calling TOLOWER(x). |
| |
| 2000-12-07 DJ Delorie <dj@redhat.com> |
| |
| * c-decl.c (grokdeclarator): preserve previous alignments when |
| rebuilding array types. |
| |
| 2000-12-07 Neil Booth <neilb@earthling.net> |
| |
| * cppfiles.c (struct include_file): Move from cpphash.h. |
| (_cpp_never_reread): New function. |
| (open_file, read_include_file): Use it. |
| (stack_include_file): Set the buffer's sysp according to the |
| path in which the file was found. |
| (find_include_file): Don't set sysp. |
| (cpp_make_system_header, actual_directory): Update. |
| (_cpp_execute_include): Do #include_next lookup handling here, |
| not in cpplib.c. Use _cpp_never_reread. |
| * cpphash.h (struct_include_file): Remove. |
| (struct cpp_buffer): New member sysp. |
| (CPP_IN_SYSTEM_HEADER, _cpp_execute_include): Update. |
| (_cpp_never_reread): New. |
| * cpplib.c (read_line_number): Rename read_flag. Rework slightly. |
| (end_directive): Clear line_extension flag. |
| (_cpp_handle_directive): Set line_extension flag for #number. |
| (do_include_next): Handle path lookup in _cpp_execute_include. |
| (do_line): Cleanup to use read_flag. Don't allow flags in #line. |
| (_cpp_do_file_change): Update. |
| (do_pragma_once): Use cpp_never_reread. Clean up. |
| * cpplib.h (struct lexer_state): New member line_extension. |
| |
| 2000-12-07 Richard Henderson <rth@redhat.com> |
| |
| * flow.c (calculate_global_regs_live): Force the stack pointer live |
| after reload as well. |
| |
| 2000-12-07 Bruce Korb <bkorb@gnu.org> |
| |
| * fixinc/Makefile.*(exeext): the variables are exeext, the |
| substitution expression is build_exeext. |
| |
| 2000-12-07 Neil Booth <neilb@earthling.net> |
| |
| * c-common.c (parse_in): Make a cpp_reader *. |
| * cppfiles.c (_cpp_fake_include): Remove. |
| * cpphash.h: Similarly. |
| * cpplib.c (do_line): Don't call _cpp_fake_include. A valid |
| #line always creates a callback; FC_RENAME if there are no |
| #line flags. |
| * fix-header.c (read_scan_file): cpp_push_buffer cannot fail. |
| The first EOF must be our get_char buffer. |
| |
| 2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-common.c (warn_format_security): New variable. |
| (check_format_info): Warn about non-literal formats with no format |
| arguments if either -Wformat-nonliteral or -Wformat-security is |
| specified. |
| (set_Wformat): Set warn_format_security for settings other than 1. |
| * c-common.h (warn_format_security): Declare. |
| * c-decl.c (c_decode_option): Decode -Wformat-security and |
| -Wno-format-security. |
| * invoke.texi: Document -Wformat-security. |
| * toplev.c (documented_lang_options): Include -Wformat-security |
| and -Wno-format-security. |
| |
| 2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-common.c (check_format_info): Warn for non-constant format |
| strings with strftime formats if -Wformat-nonliteral. Where the |
| format can convert arguments, if the format is not a string |
| literal and there are no arguments to the format, give a different |
| warning message from the general non-string-literal case. |
| |
| 2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-common.c (format_wanted_type): Add reading_from_flag. |
| (print_char_table): Mark %s and %S formats with flag "R". |
| (check_format_info_main): Set up reading_from_flag appropriately. |
| If aflag, always set writing_in_flag rather than relying on the |
| format used being a scanf format and so having it set. |
| (check_format_types): Check for formats reading through null |
| pointers. |
| |
| 2000-12-07 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * invoke.texi (-Wformat): Document what format features are |
| checked. |
| |
| 2000-12-06 Kazu Hirata <kazu@hxi.com> |
| |
| * config/h8300/h8300.h: Fix formatting. |
| |
| 2000-12-06 Joel Sherrill <joel@OARcorp.com> |
| |
| * config.gcc (a29k*-*-rtems*, arm*-*-rtems*, c4x-*-rtems*, |
| h8300-*-rtems*, hppa1.1-*-rtems, *mips*-*-rtems*): New targets. |
| * config.gcc (*-rtems*): Add support for gthr-rtems.h. |
| * gthr-rtems.h, config/a29k/rtems.h, config/arm/rtems-elf.h, |
| config/h8300/rtems.h, config/mips/rtems.h: New files. |
| |
| 2000-12-06 Mark Kettenis <kettenis@gnu.org> |
| |
| * config.gcc: Reorganize handling of *-*-gnu*, to share target |
| specific make details with Linux. Update comments to clarify |
| the distinction between GNU/Linux and GNU/Hurd. |
| |
| Wed Dec 6 19:22:02 2000 Jeffrey A Law (law@cygnus.com) |
| |
| * contrib.texi: Fix my email address. Update Per's |
| list of contributions. |
| |
| 2000-12-06 Rodney Brown <RodneyBrown@mynd.com> |
| |
| * c-lex.c (cb_indent): Decorate `str' argument, unused on HP-UX. |
| * collect2.c (scan_libraries): Remove unused `ch'. |
| (COFF specific stuff): Prototype ldgetname. Declare and prototype |
| ldbtread and ldclose. |
| |
| * config/alpha/osf.h: Standarize copyright statement. |
| * config/arc/arc.h: Likewise. |
| * config/arm/elf.h config/arm/coff.h config/arm/aout.h: Likewise. |
| * config/arm/arm.c config/arm/arm.h: Likewise. |
| * config/elxsi/elxsi.h: Likewise. |
| * config/i386/sco.h: Likewise. |
| * config/m68k/crds.h config/m68k/hp320.h config/m68k/lynx.h: Likewise. |
| * config/m68k/m68kv4.h config/m68k/next21.h: Likewise. |
| * config/m68k/sun3.h: Likewise. |
| * config/m88k/dgux.h config/m88k/dguxbcs.h: Likewise. |
| * config/pdp11/2bsd.h config/pdp11/pdp11.h: Likewise. |
| * config/romp/romp.h: Likewise. |
| * config/rs6000/aix41.h: Likewise. |
| * config/sparc/sysv4.h: Likewise. |
| * config/we32k/we32k.c config/we32k/we32k.h: Likewise. |
| * fixinc/gnu-regex.c fixinc/gnu-regex.h: Likewise. |
| * cpplib.h cppexp.c cselib.h profile.c: Likewise. |
| * longlong.h: Likewise. |
| * libgcc2.c: Likewise. |
| |
| 2000-12-06 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> |
| |
| * machmode.def: Use correct definition for BITSIZE on targets where |
| BITS_PER_UNIT != 8. |
| |
| 2000-12-06 Bruce Korb <bkorb@gnu.org> |
| |
| * fixinc/Makefile.*: Reduce differences to (ultimately) reduce |
| the number of them. |
| |
| 2000-12-06 J. David Anglin <dave@hiauly1.hia.nrc.ca> |
| |
| * pa.c: Include expr.h before c-tree.h. |
| (remove_useless_addtr_insns): Use reverse_condition_maybe_unordered |
| instead of reverse_condition. |
| (print_operand): Correct predicates for GT, GE, LT and LE. Add |
| predicates for LTGT, UNLE, UNLT, UNGE, UNGT, UNEQ, UNORDERED and |
| ORDERED. |
| (cmpib_comparison_operator): Add GEU and LTU codes. |
| * pa.h (PREDICATE_CODES): Add codes for cmpib_comparison_operator. |
| * pa.md (bltgt, bunle, bunlt, bunge, bungt, buneq, bunordered, |
| bordered): New float conditional branch patterns. |
| |
| Wed Dec 6 21:03:41 2000 J"orn Rennecke <amylaar@redhat.com> |
| |
| * final.c (final_addr_vec_align): Fix clipping to BIGGEST_ALIGNMENT. |
| |
| 2000-12-06 Sylvain Pion <Sylvain.Pion@sophia.inria.fr> |
| |
| * cpplex.c (skip_escaped_newlines): Don't warn for spaces between |
| backslash and newline, when inside a comment. |
| |
| 2000-12-06 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * invoke.texi: Use @table @samp instead of @itemize @minus for |
| table of language standards. Fix use of @pxref. From Zack |
| Weinberg. Also exclude specs documentation from generated |
| manpage, and create separate ENVIRONMENT section. |
| |
| 2000-12-06 Michael Matz <matzmich@cs.tu-berlin.de> |
| |
| * gcse.c (compute_pre_data): Kill trapping expressions in |
| destination blocks of abnormal edges. |
| |
| 2000-12-05 Richard Sandiford <r.sandiford@redhat.com> |
| |
| * config/mn10300/mn10300.c (mn10300_print_reg_list): Added. |
| (mn10300_get_live_callee_saved_regs): Likewise. |
| (mn10300_gen_multiple_store): Likewise. |
| (store_multiple_operation): Likewise. |
| (expand_prologue): Use mn10300_gen_multiple_store(). |
| * config/mn10300/mn10300-protos.h (mn10300_print_reg_list): Added. |
| (mn10300_get_live_callee_saved_regs): Likewise. |
| (mn10300_gen_multiple_store): Likewise. |
| (store_multiple_operation): Likewise. |
| * config/mn10300/mn10300.md (store_movm): Use a MATCH_PARALLEL |
| tied to store_multiple_operation(). |
| |
| Tue Dec 5 20:09:14 2000 Jeffrey A Law (law@cygnus.com) |
| |
| * builtins.c (expand_builtin_setjmp_setup): Set |
| current_function_has_nonlocal_label. |
| |
| 2000-12-05 Neil Booth <neilb@earthling.net> |
| |
| * cppfiles.c (stack_include_file): Push zero-length buffers |
| in case of failure. Return void, as we don't fail any more. |
| (read_include_file): Check for files we shouldn't re-read. |
| Don't return an error code; errors are implied by marking the |
| file NEVER_REREAD. |
| (_cpp_execute_include): Move the recursion and in-macro checks |
| here. Update for stack_include_file not failing. |
| * cpplib.c (cpp_push_buffer): Always succeed, since |
| _cpp_execute_include performs the recursion check. Tidy up. |
| * cpplib.h (cpp_push_buffer): Update prototype. |
| |
| 2000-12-05 Alexandre Oliva <aoliva@redhat.com> |
| |
| * sched-vis.c (visual_tbl_line_length): New variable. |
| (get_visual_tbl_length): Set it. |
| (visualize_stall_cycles): Don't let stalls overrun |
| visual_tbl_line_length. |
| |
| 2000-12-05 Geoffrey Keating <geoffk@redhat.com> |
| |
| * global.c (global_conflicts): Allow for a REG_UNUSED note |
| with a different mode to the REG set in the insn. |
| |
| 2000-12-05 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * Makefile.in (fixinc.sh): Pass $WARN_CFLAGS into fixinc dir. |
| |
| * fixinc/Makefile.in (FIXINC_DEFS): Add $(WARN_CFLAGS). |
| |
| 2000-12-05 Bruce Korb <bkorb@gnu.org> |
| |
| * fixinc/mkfixinc.sh(*-gnu*): activate fixinc for GNU/Hurd and |
| GNU/Linux. |
| |
| 2000-12-05 Richard Earnshaw <rearnsha@arm.com> |
| |
| * fixinc/mkfixinc.sh: Run fixinc on netbsd. |
| * fixinc/inclhack.def (machine/ansi.h): Run this rule on all files, |
| to cope with aliased copies. |
| * fixinc/fixincl.x: Regenerate. |
| |
| 2000-12-05 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * sched-vis.c: Guard with #ifdef INSN_SCHEDULING. |
| * sched-rgn.c: Likewise. |
| (rgn_print_insn): Fix output. |
| |
| 2000-12-05 Bruce Korb <bkorb@gnu.org> |
| |
| * fixinc/Makefile.*: make these more consistent |
| * fixinc/mkfixincl.sh: enable BeOS fixincludes |
| |
| 2000-12-05 Richard Henderson <rth@redhat.com> |
| |
| * stmt.c (warn_if_unused_value): Move side effects test earlier. |
| |
| 2000-12-05 Alan Modra <alan@linuxcare.com.au> |
| |
| * bb-reorder.c (reorder_basic_blocks): Do check for EH edges even |
| when using sjlj. |
| |
| 2000-12-05 Richard Henderson <rth@redhat.com> |
| |
| * flow.c (calculate_global_regs_live): Only force stack pointer |
| live before reload. Force pic register live before reload. |
| (insn_dead_p): Don't protect pic references from deletion. |
| |
| 2000-12-05 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * invoke.texi: Add support for using texi2pod.pl. Don't use |
| @multitable. |
| |
| 2000-12-04 Nick Clifton <nickc@redhat.com> |
| |
| * config/arm/arm.c (arm_override_options): Test 'insn_flags' not |
| 'tune_flags' for XScale nature. |
| Remove spurious test of HARD_FLOAT and XScale flags. |
| |
| * config/arm/arm.md (umulsidi3adddi): Restore "=&r" register |
| contraint, accidentally changed during XScale contribution. |
| |
| * config/arm/lib1funcs.asm (interwork_call_via_, call_via_): Do |
| not create these functions if the target architecture does not |
| support Thumb instructions. |
| |
| 2000-12-04 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * ONEWS: New file with the current contents of NEWS up to EGCS |
| 1.1. |
| * NEWS: Generate automatically from online release notes from EGCS |
| 1.0 to GCC 2.95.2, using ../contrib/gennews. |
| |
| 2000-12-04 Neil Booth <neilb@earthling.net> |
| |
| * tradcif.y: Move lexptr to top of file. Add rule to handle |
| assertions in conditional expressions. |
| * tradcpp.c (parse_answer): Assertions do not need to go to |
| end of line in conditional directives. |
| (parse_assertion): Get first character of identifiers correct. |
| (test_assertion): New function. |
| * tradcpp.h (test_assertion): New prototype. |
| |
| 2000-12-01 Rodney Brown <RodneyBrown@mynd.com> |
| |
| * config.gcc: Fix typo for UnixWare 7. |
| |
| 2000-12-03 Phil Edwards <pme@sources.redhat.com> |
| |
| * invoke.texi: Replace `pedwarns' with clearer text. |
| |
| 2000-12-04 Bruce Korb <bkorb@gnu.org> |
| |
| * fixinc/Makefile.*(clean): don't clean autogenerated files. |
| (mainainer-clean): clean autogenerated files |
| |
| 2000-12-04 DJ Delorie <dj@redhat.com> |
| |
| * md.texi: Add overview, clarify match_dup and define_expand. |
| |
| 2000-12-04 DJ Delorie <dj@redhat.com> |
| |
| * print-tree.c (print_node): Target-specific builtins print |
| numbers, not names. |
| |
| 2000-12-04 Jason Merrill <jason@redhat.com> |
| |
| * stor-layout.c (int_mode_for_mode): Handle MODE_VECTOR_INT, |
| MODE_VECTOR_FLOAT. |
| |
| * diagnostic.c (report_problematic_module): s/function/module/. |
| |
| * c-lex.h: Remove decl for check_newline. |
| |
| 2000-12-04 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
| |
| * README.APOLLO: Remove obsolete file. |
| |
| 2000-12-04 Neil Booth <neilb@earthling.net> |
| |
| * cppinternals.texi: New file. |
| |
| 2000-12-04 Neil Booth <neilb@earthling.net> |
| |
| * cppfiles.c (cpp_make_system_header): Take 2 booleans, |
| and operate on current buffer. |
| (cpp_read_file): Rename _cpp_read_file. |
| * cpplib.c (do_line, do_pragma_system_header): Update calls to |
| cpp_make_system_header. |
| * fix-header.c: Similarly. |
| * cpphash.h (_cpp_read_file): Move from... |
| * cpplib.h: ... here. |
| * cppinit.c (do_includes, cpp_start_read): Update appropriately. |
| |
| 2000-12-03 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * builtins.c (expand_builtin_strspn, expand_builtin_strcspn): |
| Handle another transformation. |
| |
| 2000-12-03 Nick Clifton <nickc@redhat.com> |
| |
| * config.gcc: Add support for StrongARM targets. |
| * config/arm/t-strongarm-elf: New file. |
| * config/arm/t-strongarm-coff: New file. |
| * config/arm/t-strongarm-pe: New file. |
| * config/arm/strongarm-pe.h: New file. |
| |
| 2000-12-03 Nick Clifton <nickc@redhat.com> |
| |
| * NEWS: Mention XScale has been added. |
| * config.gcc: Add support for XScale targets. |
| * config/arm/arm.h: Add support for XScale processor. |
| * config/arm/arm.c: Add support for XScale processor. |
| * config/arm/arm.md: Add support for XScale processor. |
| * config/arm/t-xscale-elf: New file. |
| * config/arm/t-xscale-coff: New file. |
| * config/arm/xscale-elf.h: New file. |
| * config/arm/xscale-coff.h: New file. |
| |
| 2000-12-03 Richard Henderson <rth@redhat.com> |
| |
| * bb-reorder.c (reorder_basic_blocks): Don't check for EH edges |
| unless exception handling is enabled, and if not using sjlj. |
| |
| * builtins.c (expand_builtin_setjmp_setup): New. |
| (expand_builtin_setjmp_receiver): New. |
| (expand_builtin_setjmp): Split out _setup and _receiver functions. |
| Move argument parsing in from ... |
| (expand_builtin): ... here. |
| * except.c (receive_exception_label): Branch around receiver |
| unless new-style exceptions. Call expand_builtin_setjmp_receiver. |
| (start_dynamic_handler): Call expand_builtin_setjmp_setup. |
| * expr.h: Update builtin setjmp decls. |
| |
| 2000-12-03 Bruce Korb <bkorb@gcc.org> |
| |
| * fixinc/mkfixinc.sh(build machine): Sometimes, there is no canonical |
| build machine name. Default to the target. |
| |
| 2000-12-03 Laurynas Biveinis <lauras@softhome.net> |
| |
| * Makefile.in: use $(build_canonical), not $(canonical_build). |
| |
| 2000-12-03 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * Makefile.in (OBJS): Add sched-rgn.o. |
| (sched-rgn.o): New rule. * haifa-sched.c (sched_verbose): No |
| longer static. |
| (INSN_PRIORITY, INSN_COST, INSN_UNIT, INSN_REG_WEIGHT, |
| INSN_BLOCKAGE, UNIT_BITS, BLOCKAGE_MASK, ENCODE_BLOCKAGE, |
| UNIT_BLOCKED, BLOCKAGE_RANGE, MIN_BLOCKAGE_COST, |
| MAX_BLOCKAGE_COST): Move to sched-int.h. |
| (MAX_RGN_BLOCKS, MAX_RGN_INSNS, INSN_REF_COUNT, FED_BY_SPEC_LOAD, |
| IS_LOAD_INSN, struct haifa_edge, edge_table, NEXT_IN, NEXT_OUT, |
| FROM_BLOCK, TO_BLOCK, nr_edges, in_edges, out_edges, IN_EDGES, |
| OUT_EDGES, edgelst, struct region, nr_regions, rgn_table, |
| rgn_bb_table, block_to_bb, containing_rgn, RGN_NR_BLOCKS, |
| RGN_BLOCKS, BLOCK_TO_BB, BB_TO_BLOCK, CONTAINING_RGN, |
| debug_regions, find_single_block_region, find_rgns, too_large, |
| init_regions, current_nr_blocks, current_blocks, bitset, bitlst, |
| bitlst_table_last, bitlst_table_size, bitlst_table, bitset_member, |
| extract_bitlst, bblst, struct candidate, candidate_table, |
| bblst_table, bblst_size, bblst_last, IS_VALID, IS_SPECULATIVE, |
| SRC_PROB, target_bb, split_edges, compute_trg_info, |
| debug_candidate, debug_candidates, bbset, bbset_size, dom, |
| IS_RGN_ENTRY, IS_DOMINATED, prob, GET_SRC_PROB, edgeset, |
| rgn_nr_edges, rgn_edges, edgeset_size, edgeset_bitsize, |
| EDGE_TO_BIT, edge_to_bit, pot_split, ancestor_edges, |
| compute_dom_prob_ps, ABS_VALUE, INSN_PROBABILITY, |
| IS_SPECULATIVE_INSN, INSN_BB, MIN_DIFF_PRIORITY, MIN_PROBABILITY, |
| MIN_PROB_DIFF, check_live_1, update_live_1, check_live, |
| update_live, set_spec_fed, is_pfree, find_conditional_protection, |
| is_conditionally_protected, may_trap_exp, haifa_classify_insn, |
| is_prisky, is_exception_free, add_branch_dependences, |
| propagate_deps, compute_block_backward_dependences, |
| debug_dependencies, is_cfg_nonregular, build_control_flow, |
| new_edge, bb_deps, BITSET_UNION, BITSET_INTER, BITSET_DIFFER, |
| BITSET_INVERT, BITSET_ADD, BITSET_REMOVE, debug_regions, |
| UPDATE_LOOP_RELATIONS, INSN_TRAP_CLASS, WORST_CLASS, IS_REACHABLE, |
| CONST_BASED_ADDRESS_P, free_pending_lists, sched_target_n_insns, |
| target_n_insns, sched_n_insns, init_ready_list, deaths_in_region, |
| can_schedule_ready_p, new_ready, schedule_more_p, rgn_print_insn, |
| rgn_rank, region_sched_info): Move to sched-rgn.c. |
| (debug_reg_vector): Delete useless function. |
| (get_bb_head_tail): Likewise. |
| (insn_issue_delay, insn_cost, ready_add, get_block_head_tail, |
| no_real_insns_p, rm_line_notes, save_line_notes, |
| restore_line_notes, rm_redundant_line_notes, sched_init): No |
| longer static. |
| (rm_line_notes, save_line_notes, restore_line_notes, |
| schedule_block, set_priorities): Change argument to be a real |
| basic block, not one of haifa's "bb"s. All callers changed |
| (rm_other_notes): Initialize note_list here, not in |
| schedule_region. |
| (sched_finish): New function, called from schedule_insn. * * |
| sched-int.h (INSN_PRIORITY, INSN_COST, INSN_UNIT, INSN_REG_WEIGHT, |
| INSN_BLOCKAGE, UNIT_BITS, BLOCKAGE_MASK, ENCODE_BLOCKAGE, |
| UNIT_BLOCKED, BLOCKAGE_RANGE, MIN_BLOCKAGE_COST, |
| MAX_BLOCKAGE_COST): Moved here from haifa-sched.c. |
| (get_block_head_tail, no_real_insns_p, rm_line_notes, |
| save_line_notes, restore_line_notes, rm_redundant_line_notes, |
| rm_other_notes, insn_issue_delay, set_priorities, schedule_block, |
| sched_init, sched_finish, ready_add, insn_cost): Declare. |
| |
| 2000-12-03 Laurynas Biveinis <lauras@softhome.net> |
| Bruce Korb <bkorb@gnu.org> |
| |
| * Makefile.in: pass $(build_canonical) to mkfixinc.sh. |
| * fixinc/mkfixinc.sh: accept build system name as an argument. |
| Use it for choosing the fix build method. Use the target for |
| selecting special fix rules. |
| |
| 2000-12-03 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * Makefile.in (OBJS): Add sched-deps.o. |
| (sched-deps.o): New rule. |
| * haifa-sched.c (struct deps, struct haifa_insn_data): Moved to |
| sched-int.h. |
| (INSN_DEPEND, INSN_LUID, CANT_MOVE, INSN_DEP_COUNT): Macros moved to |
| sched-int.h. |
| (SIZE_FOR_MODE): Delete unused macro. |
| (reg_known_equiv_p, reg_known_value, reg_pending_clobbers, |
| reg_pending_sets, reg_pending_sets_all, true_dependency_cache, |
| anti_dependency_cache, output_dependency_cache, |
| forward_dependency_cache): Variables moved to sched-deps.c. |
| (add_dependence, remove_dependence, find_insn_list, |
| find_insn_mem_list, add_insn_mem_dependence, flush_pending_lists, |
| sched_analyze_insn, sched_analyze_1, sched_analyze_2, |
| sched_analyze, group_leader, compute_forward_dependences, |
| init_deps, free_deps, init_dependency_caches, free_dependency_caches): |
| Functions moved to sched-deps.c. |
| (schedule_region): Call init_deps_global and finish_deps_global |
| instead of directly manipulating dependency data structures. |
| * sched-deps.c: New file. |
| (init_deps_global, finish_deps_global): New functions. |
| * sched-int.h (struct haifa_insn_data, struct deps): Moved here from |
| haifa-sched.c. |
| (h_i_d): Declare. |
| (INSN_DEPEND, INSN_LUID, CANT_MOVE, INSN_DEP_COUNT): Macros moved here |
| from haifa-sched.c. |
| |
| * Makefile.in (OBJS): Add sched-vis.o. |
| (sched-vis.o): New rule. |
| * haifa-sched.c (get_unit_last_insn): New function. |
| (sched_dump, insn_unit, actual_hazard_this_instance): No longer |
| static. |
| (schedule_block): Call visualize_alloc and visualize_free. Delete |
| spurious return statement. |
| (init_target_units, insn_print_units, get_visual_tbl_length, |
| init_block_visualization, print_block_visualization, safe_concat, |
| visualize_scheduled_inns, visualize_no_unit, visualize_stall_cycles, |
| print_exp, print_value, print_pattern, print_insn, target_units, |
| MAX_VISUAL_LINES, INSN_LEN, n_visual_lines, visual_tbl, |
| n_vis_no_unit, vis_no_unit): Move scheduling visualization |
| functions/variables... |
| * sched-vis.c: ...here. New file. |
| (visualize_alloc, visualize_free): New functions. |
| (visualize_scheduled_insns, visualize_stall_cycles, |
| print_block_visualization): Lose basic block argument. All callers |
| changed. |
| (visualize_scheduled_insns): Use new function get_unit_last_insn. |
| * sched-int.h (current_sched_info, sched_dump): Declare. |
| (init_target_units, insn_print_units, init_block_visualization, |
| print_block_visualization, visualize_scheduled_inns, |
| visualize_no_unit, visualize_stall_cycles, visualize_alloc, |
| visualize_free): Declare functions. |
| |
| * sched-int.h: New file. |
| * Makefile.in (haifa-sched.o): Depend on it. |
| * haifa-sched.c: Include it. |
| (no_real_insns_p): New function. |
| (current_sched_info): New static variable. |
| (__inline, HAIFA_INLINE): Moved to sched-int.h. |
| (get_block_head_tail): Minor cleanup. |
| (init_ready_list, can_schedule_ready_p, new_ready, schedule_more_p, |
| rgn_print_insn, rgn_rank): New functions, broken out of |
| rank_for_schedule, schedule_insn and schedule_block, where they |
| are now called through function pointers in current_sched_info. |
| (queue_insn, schedule_insn, queue_to_ready, debug_ready_list, |
| print_insn): To display uid and block number, call the print_insn |
| function pointer in current_schedule_info. |
| (region_sched_info): New static variable. |
| (sched_target_n_insns, sched_n_insns, target_n_insns): New global |
| variables, moved out of schedule_block. |
| (schedule_block): Return void. All callers changed. |
| Move some of the setup code into schedule_region. Get head/tail |
| from current_sched_info, and update it when done. |
| (schedule_region): Slightly rearranged, some code moved here from |
| schedule_block. Call no_real_insns_p to avoid doing work for a |
| block that consists only of notes and labels. |
| (schedule_insns): Initialize current_sched_info. |
| |
| 2000-12-03 Neil Booth <neilb@earthling.net> |
| |
| * cppmacro.c (funlike_invocation_p): Re-disable macros enabled |
| by contexts drops AFTER argument pre-expansion, so that they |
| remain enabled during argument pre-expansion. |
| (_cpp_pop_context): Unconditionally re-enable a macro when |
| dropping a context level. |
| |
| 2000-12-03 Manfred Hollstein <manfredh@redhat.com> |
| |
| * arm/t-linux (MULTILIB_OPTIONS): Comment. |
| (MULTILIB_DIRNAMES): Likewise. |
| (EXTRA_MULTILIB_PARTS): Likewise. |
| (LIBGCC): Likewise. |
| (INSTALL_LIBGCC): Likewise. |
| |
| 2000-12-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * builtins.c (expand_builtin_strcat, expand_builtin_strncat, |
| expand_builtin_strspn, expand_builtin_strcspn): New functions. |
| (expand_builtin): Handle BUILT_IN_STRCAT, BUILT_IN_STRNCAT, |
| BUILT_IN_STRSPN and BUILT_IN_STRCSPN. |
| |
| * builtins.def (BUILT_IN_STRCAT, BUILT_IN_STRNCAT, |
| BUILT_IN_STRSPN, BUILT_IN_STRCSPN): New entries. |
| |
| * c-common.c (c_common_nodes_and_builtins): Declare builtin |
| strcat, strncat, strspn and strcspn. |
| (string_ftype_string_cstring): Renamed from `string_ftype_ptr_ptr'. |
| |
| * extend.texi (strcat, strcspn, strncat, strspn): Document new |
| builtins. |
| |
| 2000-12-02 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * builtins.c (expand_builtin_strcmp): Use const*_rtx when |
| expanding strcmp at compile-time. Add another transformation. |
| (expand_builtin_strncmp): Add more transformations. Call |
| expand_builtin_memcmp, not expand_builtin_strcmp, under |
| appropriate conditions if HAVE_cmpstrsi. |
| |
| 2000-12-02 David Edelsohn <edelsohn@gnu.org> |
| |
| * rs6000.md (anddi3_internal[23]): Prefer rldic? over andis |
| instruction. |
| (cr logic): Really make operands sequential. |
| |
| 2000-12-02 Geoffrey Keating <geoffk@redhat.com> |
| |
| * c-common.c (combine_strings): When the ISO C standard specifies |
| the maximum length of a string, it doesn't include the trailing |
| zero byte. |
| |
| * cpplib.c (do_ifdef): Add check_eol() call. |
| (do_ifndef): Likewise. |
| |
| 2000-12-02 Daniel Berlin <dberlin@redhat.com> |
| Bruce Korb <bkorb@gnu.org> |
| |
| * fixinc/*: global substitute /__MSDOS__/SEPARATE_FIX_PROC/ |
| * fixinc/mkfixinc.sh: prepare to use Makefile.BEOS for *-*-beos* |
| * fixinc/Makefile.DOS: define SEPARATE_FIX_PROC for build |
| * fixinc/fixfix.c(wrap_fix): avoid wrapping files that |
| use the "__need_" hackery. It breaks them. |
| * fixinc/fixincl.c(process - SEPARATE_FIX_PROC): |
| Sometimes on DOS and BeOS the temp output file cannot be opened. |
| Skip the file noisily. Ought to be fixed instead. |
| |
| 2000-12-02 Bruce Korb <bkorb@gnu.org> |
| |
| From: 2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * fixfixes.c (emit_gnu_type, format_write): Prototype. |
| (format_write, char_macro_use_fix, char_macro_def_fix): Use gcc's |
| custom uppercase ctype macros. |
| * fixincl.c (do_version): Make static and add ATTRIBUTE_NORETURN. |
| Use gcc's custom uppercase ctype macros. |
| (main): Prototype. |
| (machine_matches): Add static prototype and constify variable. |
| (create_file, test_test, egrep_test): Add static prototype. |
| (quoted_file_exists): Likewise, and constify parameters. |
| (extract_quoted_files, internal_fix, start_fixer, fix_applies, |
| write_replacement, test_for_changes): Add static prototype. |
| (write_replacement, test_for_changes): Delete excess argument to |
| `create_file'. |
| * fixtests.c (test): Make static. |
| * server.c (load_data, sig_handler, server_setup, find_shell): Add |
| static prototype. |
| (sig_handler): Mark parameter with ATTRIBUTE_UNUSED. |
| |
| 2000-12-02 Bruce Korb <bkorb@gnu.org> |
| |
| * fixnc/mkfixinc.sh(msdosdjgpp): remove from fixincludes exception list |
| (per Laurynas Biveinis <lauras@softhome.net>) |
| |
| 2000-12-02 Richard Earnshaw <rearnsha@arm.com> |
| |
| * arm.h (ARM_REGNO_OK_FOR_BASE_P, THUMB_REGNO_MODE_OK_FOR_BASE_P): New |
| macros. |
| (REGNO_MODE_OK_FOR_BASE_P): Define in terms of above. |
| (REGNO_OK_FOR_FOR_BASE_P): Delete. |
| (ARM_REG_OK_FOR_BASE_P, THUMB_REG_MODE_OK_FOR_BASE_P): New macros for |
| both strict and non-strict uses. |
| (REG_MODE_OK_FOR_BASE_P): Define in terms of above. |
| (ARM_REG_OK_FOR_INDEX_P, THUMB_REG_OK_FOR_INDEX_P): New macros. |
| (REG_OK_FOR_INDEX_P): Define in terms of above. |
| (REG_OK_FOR_BASE_P): Delete. |
| (REG_OK_FOR_PRE_POST_P): Delete. |
| (ARM_BASE_REGISTER_RTX_P): Renamed from BASE_REGISTER_RTX_P. |
| (ARM_INDEX_REGISTER_RTX_P): Renamed from INDEX_REGISTER_RTX_P. |
| (ARM_GO_IF_LEGITIMATE_INDEX): Renamed from GO_IF_LEGITIMATE_INDEX. |
| (THUMB_LEGITIMATE_OFFSET): Renamed from LEGITIMATE_OFFSET. |
| (ARM_GO_IF_LEGITIMATE_ADDRESS): Adjust for name changes. Use ARM |
| specific variants rather than general ones. Use ARM_REG_OK_FOR_BASE_P |
| in pre/post increment cases. |
| (THUMB_GO_IF_LEGITIMATE_ADDRESS): Similarly for Thumb. |
| (ARM_LEGITIMIZE_ADDRESS): Similarly. |
| (THUMB_LEGITIMIZE_RELOAD_ADDRESS): Similarly. |
| * arm.c (legitimate_pic_address): Similarly. |
| |
| 2000-12-02 Neil Booth <neilb@earthling.net> |
| |
| * tradcpp.c (struct answer, parse_assertion, parse_answer, |
| canonicalize_text, find_answer): New. |
| (do_assert, do_unassert): Provide appropriate function bodies. |
| (union hashval): New member answers. |
| |
| 2000-11-23 Marek Michalkiewicz <marekm@linux.org.pl> |
| |
| * config/avr/avr.md: Document UNSPEC usage. |
| (*tablejump_rjmp, *tablejump_lib, *tablejump_enh, *tablejump): |
| Make operand 0 input only, clobber it. Use UNSPEC, not a bogus |
| MEM for program memory word reference. Do not add the label to |
| the table index in each of the asm output templates, instead ... |
| (casesi): ... do it in RTL. Adjust to match the above change. |
| |
| 2000-12-02 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * c-common.c (PTRDIFF_TYPE): Provide default here, ... |
| * c-decl.c: ... not here. |
| |
| * haifa-sched.c (sched_dump): Renamed from dump. All users changed. |
| (old_max_uid): New variable. |
| (compute_forward_dependences): Renamed from |
| compute_block_forward_dependences; changed to accept block head and |
| tail instead of block number. Caller changed. |
| (free_deps, init_dependency_caches, free_dependency_caches, |
| init_regions, sched_init): New functions, split out from |
| schedule_insns and compute_block_backward_dependences. |
| |
| 2000-12-02 Neil Booth <neilb@earthling.net> |
| |
| * cppexp.c (parse_number): Update diagnostic test. |
| |
| 2000-12-02 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * reload1.c (free_for_value_p): New function, frontend to |
| reload_reg_free_for_value_p. All callers of the latter now call |
| this function with an additional mode argument. |
| |
| 2000-12-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
| |
| * install.texi (Configurations): Remove obsolete documentation for |
| hppa*-*-*. |
| |
| 2000-12-02 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
| |
| * install.texi (Installation): Remove obsolete description for |
| libstdc++ which is now an integral part of GCC. |
| |
| 2000-12-01 Jim Blandy <jimb@redhat.com> |
| |
| * dbxout.c (dbxout_parms): Correctly describe parameters passed by |
| invisible reference in registers, but then spilled to the stack. |
| Remove code to emit a second stab for such parameters; it attempts |
| to describe the value's location by introducing a synthetic C++ |
| `reference' type, and then saying the stack slot has that |
| reference type. This loses type information (breaking GDB's |
| `ptype' command, among other things) just to describe a location |
| which stabs can represent correctly in other ways. |
| |
| 2000-12-01 Alexandre Oliva <aoliva@redhat.com> |
| |
| * final.c (output_addr_const) <PLUS>: Don't assume at least one |
| operand is a CONST_INT. |
| |
| * config/sh/sh.c (reg_class_from_letter): Assign `k' to SIBCALL_REGS. |
| (machine_dependent_reorg): Split all insns. |
| * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Compute |
| reg_class_contents[SIBCALL_REGS]. |
| (reg_class, REG_CLASS_NAMES, REG_CLASS_CONTENTS): Add SIBCALL_REGS. |
| * config/sh/sh.md (calli_pcrel, call_pcrel, call_valuei_pcrel, |
| call_value_pcrel, call, call_value, sibcall): Match even when |
| not optimizing. |
| (sibcalli_pcrel, sibcall_pcrel): Likewise. Use constraint `k' |
| for call address. |
| (sibcalli): Likewise. |
| |
| 2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-common.c (warn_format, warn_format_y2k, |
| warn_format_extra_args, warn_format_nonliteral): Define. |
| (check_format_info): Check warn_format_nonliteral and |
| warn_format_extra_args. |
| (check_format_info_main): Check warn_format_y2k. |
| (set_Wformat): New function. |
| * c-common.h (warn_format_y2k, warn_format_extra_args, |
| warn_format_nonliteral, set_Wformat): Declare. |
| * c-decl.c (warn_format): Remove definition. |
| (c_decode_option): Handle -Wformat-nonliteral, |
| -Wno-format-extra-args and -Wno-format-y2k, and negated versions. |
| Use set_Wformat. |
| * invoke.texi: Document these new options and -Wformat=2. |
| * toplev.c (documented_lang_options): Add these new options. |
| |
| 2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * builtins.def (BUILT_IN_IMAXABS): Add. |
| * builtins.c (expand_builtin): Also abort on BUILT_IN_IMAXABS. |
| * c-common.c (c_common_nodes_and_builtins): Create builtin |
| functions __builtin_imaxabs, and plain imaxabs unless |
| flag_no_nonansi_builtin outside C99 mode. |
| (expand_tree_builtin): Handle BUILT_IN_IMAXABS. |
| * extend.texi: Document builtin imaxabs. |
| |
| 2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-common.c: Include "defaults.h". |
| (WINT_TYPE, INTMAX_TYPE, UINTMAX_TYPE): Define. |
| (c_common_nodes_and_builtins): Create string_type_node, |
| const_string_type_node, wint_type_node, intmax_type_node, |
| uintmax_type_node, default_function_type, ptrdiff_type_node and |
| unsigned_ptrdiff_type_node. |
| * c-common.h (identifier_global_value): Declare. |
| * c-decl.c (WINT_TYPE, INTMAX_TYPE, UINTMAX_TYPE): Don't define. |
| (init_decl_processing): Don't create string_type_node, |
| const_string_type_node, wint_type_node, intmax_type_node, |
| uintmax_type_node, default_function_type, ptrdiff_type_node and |
| unsigned_ptrdiff_type_node. |
| (identifier_global_value): New function. |
| |
| 2000-12-01 Neil Booth <neilb@earthling.net> |
| |
| * cppinit.c (initialize): Forgotten prototype. |
| * cpplex.c (_cpp_lex_token): Loop until not skipping. |
| Always clear PREV_WHITE upon meeting a new line. |
| * cpplib.c (end_directive): Set pfile->skipping after |
| skip_rest_of_line. |
| * cpplib.h (cpp_reader): Remove macro_pos. |
| * cppmacro.c (cpp_get_line): Don't do anything special inside |
| macros. |
| (parse_arg): Add PREV_WHITE if a token appears after new lines. |
| (funlike_invocation_p): Save and restore the output position |
| over a successful check for a '('. |
| (enter_macro_context): Delete uses of macro_pos. |
| (cpp_get_token): Don't use pfile->skipping. |
| |
| 2000-12-01 Phil Edwards <pme@sources.redhat.com> |
| |
| * diagnostic.c: Fix typos in comments. |
| * diagnostic.h: Likewise. |
| |
| 2000-11-30 Phil Edwards <pme@sources.redhat.com> |
| |
| * rtl.texi (Machine Modes): Document BImode and OImode. |
| |
| 2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * gcc.c (default_compilers): Add suffixes .mi, .cp, .ii, .FOR and |
| .FPP. |
| |
| 2000-12-01 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-decl.c (grokdeclarator): If pedantic, warn about arrays with |
| incomplete element type. |
| (grokparms): Before checking for incomplete parameter type, check |
| the type isn't error_mark_node. |
| |
| 2000-12-01 Jakub Jelinek <jakub@redhat.com> |
| |
| * builtins.c (target_char_cast): New function. |
| (expand_builtin_strchr): Use it. |
| (expand_builtin_strrchr): Use it. |
| (builtin_memset_read_str): New function. |
| (expand_builtin_memset): Use target_char_cast. |
| Try to optimize memset with second argument nonzero using |
| store_by_pieces. |
| |
| 2000-11-30 Marek Michalkiewicz <marekm@linux.org.pl> |
| |
| * install.texi (avr): Replace incomplete list of supported MCU |
| types with a link to the current one ... |
| * invoke.texi (AVR Options): ... here. Update -mmcu= to list |
| all supported MCU types. Document -minit-stack= default. |
| Document new options -mno-tablejump, -mtiny-stack. |
| * md.texi (AVR family): Fix typo in 'w' constraint letter |
| description. Document 'q'. Update 'O'. |
| |
| 2000-12-01 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * combine.c (cant_combine_insn_p): Only disallow insns involving |
| hard regs if they are reg-reg moves. |
| (try_combine, can_combine_p, combinable_i3pat): Delete old |
| SMALL_REGISTER_CLASSES tests. |
| |
| 2000-12-01 Alexandre Oliva <aoliva@redhat.com> |
| |
| * config/sh/sh.c (shiftcosts): Don't get INTVAL before testing |
| whether X is a CONST_INT. |
| (addsubcosts): Likewise. |
| |
| * config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA): Use INTVAL instead of |
| mis-used XINT. |
| (ARG_POINTER_REGNUM): Set to AP_REG. |
| |
| 2000-11-30 Alexandre Oliva <aoliva@redhat.com> |
| |
| * config/sh/sh.md (fpu_switch0, fpu_switch1, movpsi, fpu_switch, |
| splits): Only match on TARGET_SH4. |
| |
| * combine.c (try_combine): Disregard USEs when updating LOG_LINKS |
| of subsequent insns. |
| |
| 2000-11-30 Richard Henderson <rth@redhat.com> |
| |
| * config/alpha/alpha.h (ASM_OUTPUT_MI_THUNK): Disable. |
| * config/alpha/alpha32.h (ASM_OUTPUT_MI_THUNK): Likewise. |
| |
| 2000-11-30 Richard Henderson <rth@redhat.com> |
| |
| * config/alpha/elf.h (ASM_OUTPUT_SECTION_NAME): Copy elfos.h defn. |
| (DO_SELECT_SECTION): New. |
| (SELECT_SECTION): Use it. |
| (UNIQUE_SECTION_P): New. |
| (UNIQUE_SECTION): New. |
| |
| 2000-11-30 Alexandre Oliva <aoliva@redhat.com> |
| |
| * c-common.c (status_warning) [! ANSI_PROTOTYPES]: Load status |
| from va_list before using it. |
| |
| 2000-11-30 Michael Matz <matzmich@cs.tu-berlin.de> |
| |
| * flow.c (make_edge): Early out, if no flags to set. |
| (calculate_global_regs_live): Clear out garbage only when necessary. |
| |
| * simplify-rtx.c (varray_type used_regs): New. |
| (clear_table): Use it to only clear necessary items. |
| (cselib_lookup, cselib_record_set): Remember newly set items. |
| (cselib_update_varray_sizes, cselib_init): Initialize and grow |
| used_regs. |
| |
| * local-alloc.c (update_equiv_regs): New local `cleared_regs'. |
| Move clearing of dead regs out of insn-loop. |
| |
| 2000-11-30 Richard Henderson <rth@redhat.com> |
| |
| * calls.c (expand_call): Emit queued insns before creating |
| the tail recursion sequence. |
| |
| 2000-11-30 J. David Anglin <dave.anglin@nrc.ca> |
| Bruce Korb <bkorb@gnu.org> |
| |
| * fixinc/inclhack.def(): prevent dual double definition protection |
| * fixinc/fixincl.x: regenerate |
| |
| 2000-11-29 Loren J. Rittle <ljrittle@acm.org> |
| |
| * fixinc/Makefile.in (fixincl.x): Explicitly state the |
| location of the generated file. |
| |
| 2000-11-30 Gerald Pfeifer <pfeifer@dbai.tuwien.ac.at> |
| |
| * README.FRESCO: Remove obsolete file. |
| |
| 2000-11-30 Mark Kettenis <kettenis@gnu.org> |
| |
| * config/t-gnu (LIBGCC1, CROSS_LIBGCC1, CRTSTUFF_T_CFLAGS, |
| TARGET_LIBGCC2_CFLAGS): Remove. We now use the settings from |
| config/t-linux for the Hurd. |
| |
| 2000-11-30 Stephane Carrez <Stephane.Carrez@worldnet.fr> |
| |
| * config/mn10200/udivmod.c, config/mn10200/divmod.c, |
| config/mn10200/udivmodsi4.c: Moved from here. |
| * config/udivmod.c, config/divmod.c, config/udivmodsi4.c: To here. |
| * config/mn10200/t-mn10200 (LIB2FUNCS_EXTRA): Use the generic |
| C division functions. |
| * config/m68hc11/t-m68hc11-gas (LIB2FUNCS_EXTRA): Likewise. |
| |
| Thu Nov 30 01:12:52 2000 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.md (conditional moves): Avoid holes in operand list. |
| (mod, umod patterns): Similarly. |
| (variable extract/shift patterns): Similarly. |
| |
| 2000-11-30 Neil Booth <neilb@earthling.net> |
| |
| * objc/objc-act.c (lang_init, finish_file, maybe_objc_comptypes, |
| maybe_objc_check_decl, build_objc_string_object, |
| objc_declare_alias, objc_declare_class, build_message_expr, |
| build_protocol_expr, build_selector_expr, build_encode_expr, |
| get_class_ivars, start_class, start_protocol): Remove |
| redundant code, assuming doing_objc_thang is true. |
| |
| 2000-11-29 John David Anglin <dave@hiauly1.hia.nrc.ca> |
| |
| * pa.c (restore_unscaled_index_insn_codes): Delete procedure. |
| (record_unscaled_index_insn_codes): Likewise. |
| (unscaled_index_insn_codes): Delete. |
| (max_unscaled_index_insn_codes_uid): Delete. |
| (output_function_prologue, output_function_epilogue, pa_reorg): |
| Don't use the unscaled index insn hack. |
| |
| * pa.md: Remove hack from all index insns to reverse the operand |
| order of frame and stack pointer references incorrectly created |
| in the reload pass. |
| |
| * function.h (emit_status): Delete member regno_pointer_flag and |
| rename regno_pointer_flag_length to regno_pointer_align_length. |
| Delete define for REGNO_POINTER_FLAG. |
| * integrate.h (inline_remap): Delete member regno_pointer_flag. |
| Add member x_regno_reg_rtx. |
| * rtl.h (rtx_def): Use frame_related bit to indicate register is |
| a pointer in REG expressions. Define REG_POINTER macro. |
| * alias.c (find_base_value, find_base_term): Use REG_POINTER |
| instead of REGNO_POINTER_FLAG. |
| * combine.c (nonzero_bits, num_sign_bit_copies): Likewise. |
| * emit-rtl.c (gen_reg_rtx): Use regno_pointer_align_length instead |
| of regno_pointer_flag_length. Remove code which refers to |
| regno_pointer_flag. |
| (mark_reg_pointer): Use REG_POINTER. |
| (free_emit_status): Remove code which refers to regno_pointer_flag. |
| (init_emit, mark_emit_status): Likewise. |
| * flow.c (dump_flow_info): Likewise. |
| * function.c (preserve_temp_slots): Likewise. |
| * integrate.c (expand_inline_function, copy_rtx_and_substitute): |
| Use x_regno_reg_rtx instead of regno_pointer_flag for function |
| pointer determination in map. |
| * loop.c (strength_reduce, maybe_eliminate_biv_1): Use REG_POINTER. |
| * predict.c (estimate_probability): Likewise. |
| * regclass.c (record_address_regs, reg_scan_mark_refs): Likewise. |
| * unroll.c (unroll_loop): Use x_regno_reg_rtx instead of |
| regno_pointer_flag for function pointer determination in map. |
| * convex.h (RTX_COSTS): Don't test regno_pointer_flag and use |
| REG_POINTER. |
| * pa.c (hppa_legitimize_address, emit_move_sequence, basereg_operand): |
| Use REG_POINTER. |
| (restore_unscaled_index_insn_codes): Revise comment. |
| |
| * expr.c (do_compare_and_jump): Add missing TYPE_MODE in statement. |
| |
| 2000-11-30 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * extend.texi: Update documentation for attributes. |
| |
| 2000-11-29 David O'Brien <obrien@FreeBSD.org> |
| |
| * config/alpha/elf.h (IDENT_ASM_OP): Protect the #define. |
| (ASM_DECLARE_OBJECT_NAME): Same. |
| (ASM_FILE_END): Same. |
| (ASM_FINISH_DECLARE_OBJECT): Same. |
| (ASM_IDENTIFY_GCC): Same. |
| (ASM_IDENTIFY_LANGUAGE): Same. |
| (ASM_OUTPUT_CONSTRUCTOR): Same. |
| (ASM_OUTPUT_DEF): Same. |
| (ASM_OUTPUT_DESTRUCTOR): Same. |
| (ASM_OUTPUT_EXTERNAL_LIBCALL): Same. |
| (ASM_OUTPUT_SECTION_NAME): Same. |
| (ASM_WEAKEN_LABEL): Same. |
| (BSS_SECTION_ASM_OP): Same. |
| (COMMON_ASM_OP): Same. |
| (CONST_SECTION_ASM_OP): Same. |
| (CONST_SECTION_FUNCTION): Same. |
| (CTORS_SECTION_ASM_OP): Same. |
| (DTORS_SECTION_ASM_OP): Same. |
| (ESCAPES): Same. |
| (FINI_SECTION_ASM_OP): Same. |
| (IDENT_ASM_OP): Same. |
| (IDENT_ASM_OP): Same. |
| (INIT_SECTION_ASM_OP): Same. |
| (INT_ASM_OP): Same. |
| (MAX_OFILE_ALIGNMENT): Same. |
| (SBSS_SECTION_ASM_OP): Same. |
| (SDATA_SECTION_ASM_OP): Same. |
| (SECTION_FUNCTION_TEMPLATE): Same. |
| (SELECT_SECTION): Same. |
| (SE_CONST_SECTION): Same. |
| (SIZE_ASM_OP): Same. |
| (SKIP_ASM_OP): Same. |
| (STRING_ASM_OP): Same. |
| (STRING_LIMIT): Same. |
| (TYPE_ASM_OP): Same. |
| (TYPE_OPERAND_FMT): Same. |
| |
| 2000-11-29 Neil Booth <neilb@earthling.net> |
| |
| * c-decl.c (c_decode_option): Don't handle -lang-objc. |
| * objc/lang-options.h: Remove -lang-objc. |
| * objc/lang-specs.h: Don't pass -lang-objc to cc1obj. |
| * objc/objc-act.c (lang_init_options): Set c_language. |
| |
| 2000-11-29 Jakub Jelinek <jakub@redhat.com> |
| |
| * expr.c (can_store_by_pieces): Reinitialize max_size for reverse |
| tests. |
| |
| 2000-11-29 Neil Booth <neilb@earthling.net> |
| |
| * c-pragma.c (init_pragma): Update for parse_in type change. |
| |
| 2000-11-29 Laurynas Biveinis <lauras@softhome.net> |
| |
| * configure.in: recognize DOS-style absolute paths. |
| |
| 2000-11-29 Jakub Jelinek <jakub@redhat.com> |
| |
| * expr.h (store_by_pieces): Add prototype. |
| (can_store_by_pieces): Likewise. |
| * expr.c (struct store_by_pieces): Renamed from clear_by_pieces. |
| (can_store_by_pieces): New. |
| (store_by_pieces): New. |
| (clear_by_pieces): New. |
| (clear_by_pieces_1): New. |
| (store_by_pieces_1): Renamed from clear_by_pieces, handle storing |
| arbitrary compiler generated constants into memory block. |
| (store_by_pieces_2): Renamed from clear_by_pieces_1, likewise. |
| * builtins.c (c_readstr): New. |
| (builtin_memcpy_read_str): New. |
| (expand_builtin_memcpy): If src is string constant and |
| emit_block_move would move it by pieces, compute integer constants |
| from the string and store it into memory block instead. |
| (builtin_strncpy_read_str): New. |
| (expand_builtin_strncpy): If N is not constant zero and c_strlen does |
| not return INTEGER_CST, don't optimize. |
| If N is larger than strlen(src) + 1, try to copy the string |
| including padding with store_by_pieces. |
| (expand_builtin_strcmp): If both arguments have side effects, don't |
| optimize. |
| (expand_builtin_fputs): If STR has side effects, don't optimize. |
| |
| 2000-11-29 Richard Earnshaw <rearnsha@arm.com> |
| |
| * arm.md (sibcall, sibcall_value, sibcall_insn, sibcall_value_insn): |
| Add use of link register. |
| |
| 2000-11-29 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * extend.texi: Update documentation for default format attributes. |
| |
| Tue Nov 28 21:56:45 2000 Jeffrey A Law (law@cygnus.com) |
| |
| * pa/pa-64.h (ASM_OUTPUT_SECTION_NAME): Use a hash table, not |
| a list, to keep track of the sections. |
| |
| 2000-11-28 Nick Clifton <nickc@redhat.com> |
| |
| * config/arm/arm.md (pic_load_addr): Split into |
| pic_load_addr_arm and pic_load_addr_thumb. |
| |
| * config/arm/arm.c (legitimize_pic_address): Generate either |
| ARM or Thumb versions of pic_load_addr. |
| (arm_finalize_pic): Generate either ARM or Thumb versions of |
| pic_load_addr. |
| |
| 2000-11-28 Richard Henderson <rth@redhat.com> |
| |
| * calls.c (expand_call): Defer const/pure NO_DEFER_POP until |
| after sibcall do_pending_stack_adjust. |
| |
| Wed Nov 29 00:08:23 2000 J"orn Rennecke <amylaar@redhat.com> |
| |
| * jump.c (delete_insn): Check that REG_LABEL note actually contains |
| a CODE_LABEL. |
| |
| 2000-11-28 Neil Booth <neilb@earthling.net> |
| |
| * c-common.h: Remove flag_digraphs. |
| * c-decl.c: Remove flag_digraphs. |
| (c_decode_option): Don't set it. |
| * c-lex.c (init_c_lex): Don't do anything for digraphs. |
| |
| 2000-11-28 Richard Henderson <rth@redhat.com> |
| |
| * c-parse.in (finish_parse): Update for parse_in type change. |
| (_yylex): Likewise. |
| |
| 2000-11-28 Neil Booth <neilb@earthling.net> |
| |
| * cppmacro.c (cpp_scan_buffer_nooutput): Take a boolean |
| indicating whether to scan all buffers on the stack or |
| just one. |
| * cppinit.c (do_includes): Update. |
| * cppmain.c (main): Update. |
| * cpplib.h: Update prototype. |
| |
| 2000-11-28 Richard Henderson <rth@redhat.com> |
| |
| * genoutput.c (validate_insn_operands): New. |
| (gen_insn): Call it. |
| |
| * config/alpha/alpha.md (divmodsi_internal): Renumber operands. |
| (divmoddi_internal): Likewise. |
| * config/arm/arm.md (andsi3_compare0_scratch): Likewise. |
| * config/i960/i960.md (branch patterns): Likewise. |
| * config/ia64/ia64.md (tbit_and_0): Likewise. |
| (tbit_and_1, tbit_or_0, tbit_or_1): Likewise. |
| * config/m68k/m68k.md (zero_extract memory patterns): Likewise. |
| * config/mips/mips.md (divmodsi4_internal): Likewise. |
| (divmoddi4_internal): Likewise. |
| * config/rs6000/rs6000.md (call patterns): Likewise. |
| * config/sh/sh.md (movsi_y): Likewise. |
| * config/sparc/sparc.md: Comment out if 0 v8p shift pattern. |
| |
| 2000-11-28 Richard Henderson <rth@redhat.com> |
| |
| * config.gcc: Kill residual pyramid support. |
| |
| 2000-11-28 Neil Booth <neilb@earthling.net> |
| |
| * c-lex.h (parse_in): Change parse_in to a cpp_reader *. |
| * c-decl.c (c_decode_option): Update to match. |
| * c-lex.c (init_c_lex, yyparse): Update to match. |
| * c-lang.c (lang_init_options): Use cpp_create_reader. |
| * cppinit.c (cpp_init): Rename initialize. |
| (cpp_reader_init): Rename cpp_create_reader. Create the |
| reader. Initialize cpplib if appropriate. |
| * cpplib.h (cpp_create_reader) New prototype. |
| (cpp_init, cpp_reader_init): Delete prototypes. |
| * cppmain.c (general_init, setup_callbacks): New functions. |
| (main): Use them. |
| * fix-header.c (scan_in): Change type to cpp_reader *. |
| (read_scan_file): Update for new cpplib interface and scan_in type. |
| |
| * cp/decl.c (parse_in): Change to cpp_reader *. |
| (lang_decode_option): Update. |
| * cp/lex.c (lang_init_options): Use new cpplib interface. |
| (init_cp_pragma, finish_parse, handle_pragma_implementation): Update. |
| * cp/spew.c (read_token): Update. |
| * objc/objc-act.c (lang_init_options): Update new cpplib interface. |
| |
| 2000-11-28 Jakub Jelinek <jakub@redhat.com> |
| |
| * loop.c (load_mems): Avoid using next_label to find end_label. If |
| jumping outside of the loop (other than loop end), don't hoist MEMs |
| out of loop. |
| |
| 2000-11-28 Jan Hubicka <jh@suse.cz> |
| |
| * calls.c (expand_call): Don't disable tail recursion based |
| on the loop nest. |
| |
| 2000-11-28 Neil Booth <neilb@earthling.net> |
| |
| * tradcpp.c (enum node_type): New hash types T_ASSERT, T_UNASSERT. |
| (struct directive): Drop 4th argument from handlers. |
| (do_define, do_line, do_include, do_undef, do_else, do_elif, |
| do_endif): Similarly. |
| (do_assert, do_unassert, do_ifdef, do_ifndef): New handlers. |
| (do_ifxdef): Update as common handler of do_ifdef and do_ifndef. |
| (make_definition, make_undef): Take a const char*. |
| (make_assertion): New function. |
| (struct directive_table): Update. |
| (main): Handle -A command line argument. |
| (handle_directive): Drop fourth handler argument. |
| |
| 2000-11-28 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * simplify-rtx.c (cselib_record_sets): Ignore sets whose destination |
| is anything but REG or MEM, but look inside STRICT_LOW_PART. |
| |
| Tue Nov 28 09:53:50 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * system.h (IS_DIR_SEPARATOR): Use uppercase macro name. |
| (IS_ABSOLUTE_PATHNAME): New macro. |
| * gcc.c (find_a_file, process_command, do_spec_1, main): Use it. |
| |
| 2000-11-28 Jakub Jelinek <jakub@redhat.com> |
| |
| * config/i386/i386.md (truncxfsf2_2): Fix predicate. |
| |
| 2000-11-27 Jim Wilson <wilson@redhat.com> |
| |
| * reload1.c (reload): Use HOST_WIDE_INT for old_frame_size. |
| |
| 2000-11-27 Matthias Klose <doko@cs.tu-berlin.de> |
| |
| * extend.texi (Nested Functions): Update URL of Usenix paper. |
| |
| 2000-11-27 Mark Mitchell <mark@codesourcery.com> |
| |
| * function.c (free_after_compilation): Clear x_clobber_return_insn. |
| |
| 2000-11-27 Neil Booth <neilb@earthling.net> |
| |
| * cppinit.c (cpp_reader_init): Remove handling of warn_paste |
| command line options. |
| (cpp_handle_option): Similarly. |
| * cpplib.h (struct cpp_options): Remove warn_paste. |
| * cppmacro.c (paste_tokens): Apart from assembler, make |
| unpasteable token warning mandatory. |
| |
| 2000-11-27 Neil Booth <neilb@earthling.net> |
| |
| * tradcpp.c (enum pending_dir_t, struct pending_dir): New. |
| (main): Allocate a pending directive set of these. Use it. |
| Merge handling of -D and -U. Update handling of pending |
| directives. Free the memory after use. |
| |
| 2000-11-27 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * flow.c (entry_exit_blocks): Add entry for cond_local_set. |
| (struct propagate_block_info): Add new member cond_local_set. |
| (propagate_block): Accept new arg cond_local_set. All callers |
| changed. |
| (init_propagate_block_info): Likewise. |
| (calculate_global_regs_live): Allocate & free cond_local_set. Always |
| rescan if there's overlap between cond_local_set and new_live_at_end. |
| (mark_set_1): Set bits either in cond_local_set or local_set, as |
| appropriate. |
| * basic-block.h (struct basic_block_def): New field cond_local_set. |
| (propagate_block, init_propagate_block_info): Update prototypes. |
| |
| Mon Nov 27 17:29:44 2000 kaz Kojima <kkojima@rr.iij4u.or.jp> |
| |
| * gcc/config/sh/sh.md (udivsi3_i4, udivsi3_i4_single): Clobber |
| T register. |
| |
| 2000-11-27 Richard Earnshaw <rearnsha@arm.com> |
| |
| * arm.c (select_dominance_cc_mode): Handle new way that combine |
| canonicalizes conditional compares. |
| (arm_select_cc_mode): Likewise. |
| * arm.md: Garbage collect some dead code. |
| (cmp_and, cmp_ior): New patterns. |
| (splitter for conditional move with inverted false): Use cond_exec |
| and handle unordered comparisons. |
| |
| Mon Nov 27 17:22:56 MET 2000 Jan Hubicka <jh@suse.cz> |
| |
| * i386.c (ix86_force_to_memory, ix86_free_from_memory): New. |
| * i386-protos.h (ix86_force_to_memory, ix86_free_from_memory): Declare |
| * i386.md (float?i?f, int/fp operations): Rewrite spliters to use |
| ix86_force_to_memory and ix86_free_from_memory. |
| |
| 2000-11-27 Richard Earnshaw <rearnsha@arm.com> |
| |
| * arm.md (arm_adddi3, adddi_sesidi_di, adddi_zesidi_di, arm_addsi3, |
| arm_subsi3_insn, anddi_zesidi_di, arm_andsi3_insn, anddi_notdi_di, |
| anddi_notzesidi_di, anddi_notsesidi_di, arm_iorsi3, |
| one_cmpldi2): Merge with splitters to create define_insn_and_split |
| patterns. Remove redundant splits. |
| (peephole2 for add:SI of invalid immediate): New. |
| (peephole2 for minus:SI of invalid immediate): New. |
| (peephole2 for ior:SI of invalid immediate): New. |
| (peephole for merge of move and compare): Convert ot peephole2. |
| (addsf3, adddf3): Mark as commutative. |
| |
| * arm.md (thumb peephole for merging stack adjustments): Convert to |
| peephole2. |
| |
| 2000-11-27 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * haifa-sched.c (print_pattern): Prettier output for COND_EXEC. |
| |
| * reload1.c (reload_cse_simplify_set): Pass down mode to cselib_lookup. |
| (reload_cse_simplify_operands): Do nothing about operands where both |
| the operand and the match_operand fail to give us a mode. |
| * simplify-rtx.c (wrap_constant): New function. |
| (entry_and_rtx_equal_p): Except integer constants to come wrapped in a |
| CONST describing the proper mode. |
| (rtx_equal_for_cselib_p): Pass down modes to recursive calls of |
| cselib_lookup. |
| (cselib_lookup_mem): Call wrap_constant on the rtx that is passed to |
| htab_find_slot_with_hash. |
| (cselib_lookup): Likewise. |
| |
| Based on a patch from Geoff Keating <geoffk@redhat.com>: |
| * loop.c (basic_induction_var): If a REG is set from something |
| that is not a biv, then the REG is not a biv. Even if it is |
| earlier set from something that is a biv. |
| |
| 2000-11-27 Alexandre Oliva <aoliva@redhat.com> |
| |
| * configure.in (extra_objs): Enclose extra_headers in quotes. |
| * configure: Rebuilt. |
| |
| 2000-11-27 Neil Booth <neilb@earthling.net> |
| |
| * c-lex.c (cb_enter_file, cb_leave_file, cb_rename_file): |
| Combine into the new function cb_change_file. |
| (init_c_lex): Update. |
| * cppfiles.c (stack_include_file): Use _cpp_do_file_change. |
| (cpp_syshdr_flags): Delete. |
| * cpphash.h (_cpp_do_file_change): New prototype. |
| Move struct cpp_buffer here from... |
| * cpplib.h (struct cpp_buffer): ... here. |
| (enum cpp_fc_reason, struct cpp_file_loc, |
| struct_cpp_file_change, change_file): New. |
| (enter_file, leave_file, rename_file, cpp_syshdr_flags): Delete. |
| * cpplib.c (do_line): Update for new cb_change_file callback. |
| (_cpp_do_file_change): New function. |
| (_cpp_pop_buffer): Update to use it. |
| * cppmain.c (move_printer): Delete. |
| (main): Set up single callback cb_change_file. |
| (cb_enter_file, cb_leave_file, cb_rename_file): Delete. |
| (cb_change_file): New. |
| * fix-header.c (cur_file, cb_change_file): New. |
| (recognized_function, read_scan_file): Update. |
| * scan-decls.c (scan_decls): Update. |
| * scan.h (recognized_function): Update prototype. |
| |
| 2000-11-26 Mark Mitchell <mark@codesourcery.com> |
| |
| * tree.h (mark_tree_hashtable): New function. |
| * tree.c (mark_tree_hashtable_entry): New function. |
| (mark_tree_hashtable): Likewise. |
| |
| 2000-11-27 Michael Meissner <meissner@redhat.com> |
| |
| * d30v-protos.h (srelational_si_operator): Correctly spell |
| function. |
| (urelational_si_operator): Ditto. |
| (relational_si_operator): Ditto. |
| (d30v_expand_prologue): Add prototype. |
| (d30v_expand_epilogue): Ditto. |
| |
| * d30v.h (OPTIMIZATION_OPTIONS): Undo November 22nd change. |
| |
| * d30v.md (movcccc_*): Delete now unused patterns. |
| (64 bit comparison splitters): Rewrite to use COND_EXEC instead of |
| IF_THEN_ELSE. |
| (define_cond_exec): Use 'b' to select branch flags. |
| |
| 2000-11-26 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * builtins.c (expand_builtin_strncmp, expand_builtin_strncpy): New |
| functions. |
| (expand_builtin): Handle BUILT_IN_STRNCPY and BUILT_IN_STRNCMP. |
| |
| * builtins.def (BUILT_IN_STRNCPY, BUILT_IN_STRNCMP): New entries. |
| |
| * c-common.c (c_common_nodes_and_builtins): Declare builtin |
| strncpy and strncmp. |
| |
| * extend.texi (strncmp, strncpy): Document new builtins. |
| |
| 2000-11-26 Mark Mitchell <mark@codesourcery.com> |
| |
| * config/elfos.h (ASM_OUTPUT_SECTION_NAME): Use a hash table, not |
| a list, to keep track of the sections. |
| * tm.texi (ASM_OUTPUT_SECTION_NAME): Document the fact that the |
| parameter provided will always be a canonical string. |
| |
| 2000-11-26 Neil Booth <neilb@earthling.net> |
| |
| * cppmacro.c (cpp_scan_buffer_nooutput): Only scan the |
| current buffer. |
| |
| 2000-11-26 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * makefile.vms: Remove EGCS references. |
| |
| 2000-11-26 Ulrich Drepper <drepper@redhat.com> |
| |
| * dwarf2out.c (output_file_names): New function. Compute minimal |
| combination of directory and file name table and emit them. |
| (output_line_info): Remove code to emit directory and file name |
| table and call output_file_names instead. |
| (file_info_cmp): Helper function to sort directory names. |
| |
| 2000-11-26 Neil Booth <neilb@earthling.net> |
| |
| * cpplib.h (struct cpp_reader): Remove lang_asm. |
| (struct cpp_options): Remove c89. New members lang, |
| extended_numbers. |
| * cppexp.c (parse_number): Use them. |
| * cpphash.h (VALID_SIGN): Use them. |
| * cppinit.c (set_lang, cpp_start_read): Update. |
| * cpplex.c (parse_string, _cpp_lex_token): Update. |
| * cpplib.c (_cpp_handle_directive): Update. |
| * cppmacro.c (parse_args): Update. |
| * cppmain.c (scan_buffer): Update. |
| |
| Sun Nov 26 10:02:37 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * fold-const.c (fold, case CONVERT_EXPR): Always return tree of |
| proper type. |
| |
| 2000-11-26 Neil Booth <neilb@earthling.net> |
| |
| * Makefile.in: Remove MAYBE_CPPLIB and maybe_cpplib. |
| * c-decl.c: Remove parse_in declaration. |
| * c-lang.c: Similarly. |
| * c-lex.c: Similarly. |
| * c-parse.in: Similarly. |
| * c-pragma.c: Similarly. |
| * configure.in: Similarly. |
| * cp/Make-lang.in: Similarly. |
| * cp/spew.c: Similarly. |
| * cp/decl2.c: Remove check for lang-c++ option. |
| * cp/lang-specs.h: Remove -lang-c++ from cc1plus command line. |
| * cp/lex.c (lang_init_options): With cpp_reader_init, default to C++. |
| * c-lex.h: Add declaration of parse_in. |
| * cppinit.c: Call set_lang after allocating pfile->pending. |
| * configure: Regenerate. |
| |
| 2000-11-25 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * combine.c (try_combine): Remove redundant test. |
| |
| 2000-11-25 Richard Henderson <rth@redhat.com> |
| |
| * c-common.h (DECL_C_HARD_REGISTER): New. |
| * c-decl.c (finish_decl): Set it for asm register variables. |
| * c-semantics.c (emit_local_var): Test it when instantiating one. |
| |
| 2000-11-25 Richard Henderson <rth@redhat.com> |
| |
| * c-decl.c (c_expand_body): Use DECL_SOURCE_LINE rather than |
| lineno for the start of the function. |
| |
| 2000-11-25 Richard Henderson <rth@redhat.com> |
| |
| * dwarf2out.c (file_table, file_table_allocated): Remove. |
| (file_table_allocated): Remove. |
| (struct file_table): New. |
| (decl_file_table, line_file_table): New. |
| (print_dwarf_line_table): Use them. |
| (size_of_line_prolog): Likewise. |
| (output_line_info): Likewise. |
| (add_src_coords_attributes): Likewise. |
| (gen_subprogram_die): Likewise. |
| (gen_variable_die): Likewise. |
| (dwarf2out_add_library_unit_info): Likewise. |
| (dwarf2out_line): Likewise. |
| (lookup_filename): Take a struct file_table argument. |
| (init_file_table): New. |
| (dwarf2out_init): Use it. |
| |
| 2000-11-25 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * invoke.texi: Update sequence points references. |
| |
| 2000-11-25 Neil Booth <neilb@earthling.net> |
| |
| * c-common.c: Remove USE_CPPLIB conditional inclusions. |
| * c-common.h: Similarly. |
| * c-decl.c: Similarly. |
| * c-lang.c: Similarly. |
| * c-lex.c: Similarly. |
| * c-parse.in: Similarly. |
| * c-pragma.c: Similarly. |
| * c-pragma.h: Similarly. |
| * gcc.c: Similarly. |
| * toplev.c: Similarly. |
| * cp/cp-tree.h: Similarly. |
| * cp/decl2.c: Similarly. |
| * cp/lang-specs.h: Similarly. |
| * cp/lex.c: Similarly. |
| * cp/lex.h: Similarly. |
| * cp/spew.c: Similarly. |
| * java/lang-options.h: Similarly. |
| * objc/lang-specs.h: Similarly. |
| * objc/objc-act.c: Similarly. |
| |
| * configure.in: Remove configure option. |
| * config.in: Regenerate. |
| * configure: Regenerate. |
| |
| 2000-11-25 Richard Henderson <rth@redhat.com> |
| |
| * haifa-sched.c (sched_analyze_1, sched_analyze_2, sched_analyze): |
| Revert 2000-11-22 change. |
| |
| 2000-11-25 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * config/i386/i386.h (FIXED_REGS): Make the three flags registers |
| fixed. |
| |
| 2000-11-25 Philipp Thomas <pthomas@suse.de> |
| * configure.in (ALL_LINGUAS): Remove en_GB and add sv. |
| * configure: Rebuilt. |
| |
| 2000-11-25 Jakub Jelinek <jakub@redhat.com> |
| |
| * config/sparc/sparc.md (muldi3_v8plus): Remove H constraint. |
| Handle CONST_INT as second argument. |
| * config/sparc/sparc.c (set_extends): Remove first argument. |
| Properly handle AND, CONST_INT and CONST_DOUBLE, handle IOR, XOR and |
| MOV. |
| (sparc_check_64): Abort if first argument is not REG. |
| If it is DImode REG, look at the lower register of the register |
| pair. |
| |
| * config/sparc/sparc.c (load_pic_register, restore_regs, |
| output_return, sparc_v8plus_shift, sparc_function_profiler, |
| sparc_function_block_profiler, sparc_block_profiler): Fix output |
| formatting. |
| |
| 2000-11-25 Alexandre Oliva <aoliva@redhat.com> |
| |
| * config/sh/sh.h (TARGET_NONE): New. |
| (TARGET_SWITCHES): For all variant-selecting switch, use |
| TARGET_NONE to reset all other variant-selecting switch. Added |
| empty strings to avoid warnings. |
| (TARGET_DEFAULT): Set to SH1_BIT. |
| |
| * Makefile.in ($(INTL_TARGETS)): Added $(CONFIG_H) for |
| insn-codes.h. |
| |
| * gcc/config/sh/sh.md (sibcalli, sibcalli_pcrel): New insns. |
| (sibcall_pcrel): New insn_and_split. |
| (sibcall, sibcall_value, sibcall_epilogue): New expands. |
| |
| * config/sh/sh.md (GOTaddr2picreg, symGOT2reg, symGOTOFF2reg, |
| symPLT_label2reg, call, call_value): Don't set |
| current_function_uses_pic_offset_table. |
| * config/sh/sh.h (CONDITIONAL_REGISTER_USAGE): Don't mark |
| PIC_OFFSET_TABLE_REGNUM as call_used, so that calc_live_regs |
| takes it into account. |
| (FINALIZE_PIC): Delete, useless. |
| (LEGITIMATE_CONSTANT_P): Delete, unused. |
| * config/sh/sh.c (sh_expand_prologue): Don't use |
| current_function_uses_pic_offset_table. Don't special-case |
| PIC_OFFSET_TABLE_REGNUM. Initialize it if it's ever live and |
| PIC is enabled. |
| (sh_expand_epilogue, initial_elimination_offset): Don't |
| special case PIC_OFFSET_TABLE_REGNUM. |
| |
| 2000-11-25 Alexandre Oliva <aoliva@redhat.com>, NIIBE Yutaka <gniibe@m17n.org> |
| |
| * config/sh/sh-protos.h (symbol_ref_operand): Declare. |
| * config/sh/sh.md (UNSPEC_CALLER): New constant. |
| (calli_pcrel, call_valuei_pcrel): Use PIC_REG. |
| (call_pcrel, call_value_pcrel): New insn_and_splits. |
| (call, call_value): Use them. |
| (call_site): New expand. |
| (sym_label2reg, symPLT_label2reg): Adjust to hold call_sites. |
| * config/sh/sh.h (OUTPUT_ADDR_CONST_EXTRA) [UNSPEC_CALLER]: |
| Output call_site label. |
| (PREDICATE_CODES): Added symbol_ref_operand. |
| * config/sh/sh.c (symbol_ref_operand): Define. |
| * emit-rtl.c (try_split): Propagate CALL_INSN_FUNCTION_USAGE |
| to CALL_INSNs in the split sequence. |
| |
| 2000-11-24 Nick Clifton <nickc@redhat.com> |
| |
| * config.gcc (v850-*-*): Define c_target_objs and |
| cxx_target_objs. |
| |
| * config/v850/t-v850: Define how to build v850-c.o |
| |
| * config/v850/v850.h (struct data_area_stack_element): Move |
| definition here from v850.c. |
| |
| * config/v850v850.c: Include gcc.h to avoid compile time |
| warning. |
| (push_data_area): Move to v850-c.c. |
| (pop_data_area): Move to v850-c.c. |
| (mark_current_function_as_interrupt): Move to v850-c.c. |
| (GHS_default_section_names): Allow to be exported. |
| (GHS_current_section_names): Allow to be exported. |
| (data_area_stack_elements): Allow to be exported. |
| (ghs_pragma_section): Move to v850-c.c. |
| (ghs_pragma_interrupt): Move to v850-c.c. |
| (ghs_pragma_starttda): Move to v850-c.c. |
| (ghs_pragma_startsda): Move to v850-c.c. |
| (ghs_pragma_startzda): Move to v850-c.c. |
| (ghs_pragma_endtda): Move to v850-c.c. |
| (ghs_pragma_endsda): Move to v850-c.c. |
| (ghs_pragma_endzda): Move to v850-c.c. |
| |
| * config/v850/v850-c.c: New file: Contains v850 specific |
| pragma parsing functions. |
| |
| 2000-11-24 Nick Clifton <nickc@redhat.com> |
| |
| * config.gcc (extra_objs): Remove duplicate description. |
| (c_target_objs): New variable. Contains target specific |
| object files for the gcc C compiler only. |
| (cxx_target_objs): New variable. Contains target specific |
| object files for the gxx C++ compiler only. |
| |
| * configure.in (c_target_objs): Substitute in the makefile. |
| (cxx_target_objs): Substitute in the makefile. |
| * configure: Regenerate. |
| |
| * Makefile.in (C_TARGET_OBJS): Define and initialize from |
| c_target_objs. |
| (CXX_TARGET_OBJS): Define and initialize from |
| cxx_target_objs. |
| (C_AND_OBJC_OBJS): Include C_TARGET_OBJS. |
| |
| * cp/Make-lang.in (CXX_C_OBJS): Include CXX_TARGET_OBJS). |
| |
| * tm.texi (REGISTER_TARGET_PRAGMAS): Add paragraph explaining |
| about how the use of the 'c_lex' function requires the use of |
| the target specific, language specific object files feature of |
| the configuration mechanism. |
| |
| Fri Nov 24 18:50:58 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * gcc.c (process_command): Use F_OK, not R_OK. |
| |
| 2000-11-24 Arno J. Klaassen <arno@heho.snv.jussieu.fr> |
| |
| * flow.c (print_rtl_and_abort): Remove ANSIism. |
| |
| Fri Nov 24 19:54:36 2000 Alexandre Oliva <aoliva@redhat.com> |
| |
| * config/sh/sh.h (GENERAL_REGISTER_P, |
| GENERAL_OR_AP_REGISTER_P, FP_REGISTER_P, XD_REGISTER_P, |
| FP_OR_XD_REGISTER_P, FP_ANY_REGISTER_P): New macros. Use them |
| all over. |
| (SPECIAL_REG): Renamed to SPECIAL_REGISTER_P. |
| * config/sh/sh.c: Use new macros. |
| * config/sh/sh.md: Likewise. |
| |
| Fri Nov 24 19:46:16 2000 Alexandre Oliva <aoliva@redhat.com> |
| |
| * config/sh/sh.md: Clobber MACH_REG and MACL_REG in SImode, |
| instead of just MACH_REG in DImode. Always refer to FPSCR_REG |
| in PSImode. |
| |
| Fri Nov 24 22:37:41 2000 Denis Chertykov <denisc@overta.ru> |
| |
| * config/avr/avr.c (out_tsthi,out_tstsi): Test simplification bug |
| fixed. |
| (machine_dependent_reorg): Wrong optimization based on |
| NOTICE_UPDATE_CC removed. |
| |
| Fri Nov 24 19:48:09 2000 J"orn Rennecke <amylaar@redhat.com> |
| |
| * jump.c (delete_computation): Re-instate deletion of feeding insn. |
| (delete_insn): Look for REG_LABEL notes. |
| (redirect_tablejump): Delete feeding insns. |
| |
| 2000-11-24 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * config/i386/i386.md (call_pop_0, call_pop_1, call_value_pop_0, |
| call_value_pop_1): Make sure operand numbers are contiguous. |
| |
| * fold-const.c (fold_range_test): Avoid crash if LHS or RHS is null. |
| |
| * reload1.c (conflicts_with_override): New function. |
| (emit_input_reload_insns): Use it to tighten test for validity |
| of substituting into output of previous insn. |
| |
| * haifa-sched.c (struct ready_list): New. |
| (ready_lastpos, ready_add, ready_remove_first, ready_sort): New static |
| functions. |
| (schedule_insn): Replace args READY and N_READY with a pointer to a |
| ready_list; return void. Use the new functions to access the ready |
| list. All callers changed. |
| (queue_to_ready, debug_ready_list): Likewise. |
| (schedule_block): Initialize a ready_list structure. Use new |
| functions to access it. |
| (max_priority): Remove unused variable. |
| (schedule_insn): Don't set it. |
| |
| * c-common.c (verify_tree): Don't recurse into CONSTRUCTORs. |
| |
| * combine.c (cant_combine_insn_p): New function. |
| (try_combine): Use it. |
| |
| * Makefile.in (c-common.o): Depend on $(OBSTACK_H). |
| * c-common.c (c-obstack.c): Include "obstack.h". |
| (struct reverse_tree): Delete. |
| (reverse_list, reverse_max_depth): Delete. |
| (build_reverse_tree, common_ancestor, modify_ok): Delete functions. |
| (struct tlist, struct tlist_cache): New. |
| (tlist_obstack, tlist_firstobj, warned_ids, save_expr_cache): New. |
| (add_tlist, merge_tlist, verify_tree, warning_candidate_p, |
| warn_for_collisions, warn_for_collisions_1, new_tlist): New |
| static functions. |
| (verify_sequence_points): Rewritten. |
| * fold-const.c (fold): Don't lose possibly important sequence |
| points when removing one arm of TRUTH_ORIF_EXPRs or TRUTH_ANDIF_EXPRs. |
| |
| 2000-11-24 Richard Sandiford <rsandifo@redhat.com> |
| |
| * gcc/cse.c (cse_insn): Removed conversion of REG_EQUIV to REG_EQUAL |
| when reversing a register-to-register copy. Reversal now disabled |
| when the previous instruction has a REG_EQUIV. |
| |
| 2000-11-24 Nathan Sidwell <nathan@codesourcery.com> |
| |
| * c-parse.in (unary_expr): Move VA_ARG from here ... |
| (primary): ... to here. |
| |
| 2000-11-23 Graham Stott <grahams@redhat.com> |
| |
| * expr.c (store_constructor): If a field is non addressable and |
| the target is a MEM use MEM_ALIAS_SET otherwise use get_alias_set. |
| |
| 2000-11-23 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * flow.c (print_rtl_and_abort): New function. |
| (verify_wide_reg, verify_local_live_at_start): Try to dump more |
| information before aborting. |
| |
| 2000-11-23 Alexandre Oliva <aoliva@redhat.com> |
| |
| * emit-rtl.c (gen_lowpart_common): Use word 0 if register mode |
| is narrower than requested mode. |
| (gen_highpart): Abort if register mode is narrower than |
| requested mode. |
| |
| 2000-11-23 Graham Stott <grahams@redhat.com> |
| |
| * cse.c (cse_insn): Initialize all regcost variables. |
| Fix a typo add missing '='. |
| Only compare costs if there is a replacement insn. |
| |
| Thu Nov 23 04:33:33 2000 Alexandre Oliva <aoliva@redhat.com> |
| |
| * final.c (output_addr_const) [LABEL_REF]: Simplify. |
| [MINUS]: Enclose non-CONST_INTs in parentheses. |
| [default]: Try OUTPUT_ADDR_CONST_EXTRA. |
| * tm.texi (OUTPUT_ADDR_CONST_EXTRA): Document it. |
| * varasm.c (decode_rtx_const) [CONST]: If it's not something |
| PLUS or MINUS a CONST_INT, use the whole CONST with offset 0 |
| instead of abort()ing. |
| * sh.c (output_pic_addr_const): Removed. Fixed all callers. |
| * sh.h (OUTPUT_ADDR_CONST_EXTRA): New. Handle the UNSPECs |
| formerly handled in output_pic_addr_const. |
| * sh.md (sym_label2reg, symPLT_label2reg): Enclose UNSPEC |
| operands of MINUS in CONSTs so that decode_rtx_const() will |
| accept them. |
| |
| Thu Nov 23 04:10:30 2000 Alexandre Oliva <aoliva@redhat.com> |
| |
| * config/sh/sh.md (mova_const): New pattern. |
| (GOTaddr2picreg): Use it. |
| * config/sh/sh.c (broken_move): Match it. |
| (mova_p): Don't match it. |
| (machine_dependent_reorg): Adjust it. |
| |
| Thu Nov 23 02:09:09 2000 Alexandre Oliva <aoliva@redhat.com> |
| |
| * config/sh/sh.h (FIRST_GENERAL_REG, LAST_GENERAL_REG): New. |
| Moved most register-number #defines... |
| * config/sh/sh.md (define_constants): ... here. Use macros to |
| refer to registers and unspecs. |
| * config/sh/sh.c: Likewise. |
| |
| Thu Nov 23 01:01:32 2000 J"orn Rennecke <amylaar@redhat.com> |
| |
| * Makefile.in (HOST_CFLAGS): Add -DGENERATOR_FILE. |
| (rtl.o, print-rtl.o, bitmap.o, obstack.o): Build with -DGENERATOR_FILE. |
| (alloca.o, vfprintf.o, ggc-none.o, errors.o): Likewise. |
| (splay-tree.o, hash.o): Likewise. |
| GCONFIG_H: New. |
| (rtl.o, print-rtl.o): Depend on $(GCONFIG_H) instead of $(CONFIG_H). |
| (bitmap.o, obstack.o, vfprintf.o, ggc-none.o, errors.o): Likewise. |
| (hashtab.o): Likewise. |
| (gcov.o): Depend on $(CONFIG_H). |
| * configure.in: #include insn-codes.h in tm.h. |
| |
| 2000-11-22 Nick Clifton <nickc@redhat.com> |
| |
| * config/arm/arm.c (arm_encode_call_attribute): Make 'newstr' a |
| const char * to avoid a compile time warning. |
| |
| * config/arm/arm.md (define_constants): Define symbolic names for |
| the link register, last integer register and the fake CC register. |
| Update patterns to use these symbolic names. |
| |
| 2000-11-22 Neil Booth <neilb@earthling.net> |
| |
| * cpplex.c (trigraph_ok): Ensure we don't warn twice. |
| * cpplib.h (struct cpp_buffer): New member last_Wtrigraphs. |
| |
| 2000-11-22 Richard Henderson <rth@redhat.com> |
| |
| * haifa-sched.c (sched_analyze_1): Don't special-case calls |
| for clobbering registers. |
| (sched_analyze_2): Likewise. |
| (sched_analyze): Zap reg_last_uses and reg_last_sets after calls. |
| |
| 2000-11-22 Chris Demetriou <cgd@sibyte.com> |
| Neil Booth <neilb@earthling.net> |
| |
| * gcc.c (validate_switches): Validate multiple switches named |
| in '|' (or) expressions in specs. |
| (handle_braces): If more than 1 alternative in a '|' spec |
| matches, call do_spec1 just once. |
| |
| 2000-11-22 Michael Meissner <meissner@redhat.com> |
| |
| * d30v.h (TARGET_SWITCHES): Add documentation strings. |
| (TARGET_OPTIONS): Ditto. |
| (OPTIMIZATION_OPTIONS): Temporarily turn off -frename-registers if |
| -O3. |
| |
| Wed Nov 22 06:40:56 2000 Jeffrey A Law (law@cygnus.com) |
| |
| * pa.c (hppa_encode_label): Account for addition of encoding |
| character when allocating persistent space for the new label |
| name. |
| |
| 2000-11-22 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * Makefile.in, config.gcc, configure.in: Expunge remaining |
| traces of facility for running MD files through C preprocessor. |
| |
| 2000-11-22 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * gcov.texi: Add magic comments for texi2pod.pl. |
| * Makefile.in: Add rules to generate and install gcov.1. |
| * gcov.1: New (generated) file. |
| |
| 2000-11-21 Richard Henderson <rth@redhat.com> |
| |
| * regrename.c (scan_rtx_reg): Terminate the chain rather than |
| abort on mark_read with NO_REGS. |
| |
| 2000-11-21 Mike Stump <mrs@wrs.com> |
| |
| * fixinc/fixtests.c (TEST_FOR_FIX_PROC_HEAD): Fix to allow |
| compilation with older compilers, such as /bin/cc on SunOS. |
| * fixinc/fixfixes.c (FIX_PROC_HEAD): Ditto. |
| |
| 2000-11-21 Richard Henderson <rth@redhat.com> |
| |
| * varasm.c (record_constant): Pad the constructed |
| constant_descriptor appropriately. |
| |
| Wed Nov 22 00:52:55 2000 J"orn Rennecke <amylaar@redhat.com> |
| |
| * rtl.h (traverse_md_constants): Declare. |
| (struct md_constant): Define. |
| * Makefile.in (HOST_RTL): Add hashtab.o . |
| (OBJS): Add hashtab.o . |
| (hashtab.o): New rule. |
| (rtl.o): Depends on HASHTAB_H. |
| * rtl.c (hashtab.h): #include. |
| (md_constants): New static variable. |
| (def_hash, def_name_eq_p, read_constants): New static functions. |
| (traverse_md_constants): New function. |
| (read_name): Do constant expansion. |
| (read_rtx): Recognize define_constants. |
| * gencodes.c (print_md_constant): New function. |
| (main): Emit #defines for all constant definitions encountered. |
| * md.texi (Constant Definitions): New node. |
| * gensupport.c (xcalloc): New function. |
| |
| 2000-11-21 Richard Henderson <rth@redhat.com> |
| |
| * config/alpha/alpha.c (alpha_split_tfmode_frobsign): New. |
| * config/alpha/alpha-protos.h: Declare it. |
| * config/alpha/alpha.md (abstf_internal): Use it. |
| (negtf_internal): Likewise. |
| (andnotdi3): Unstar the name. |
| (movtf_internal): Add o/G alternative. |
| |
| 2000-11-21 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * stringpool.c (stringpool_statistics): Also report number and |
| percentage of entries which are identifiers. |
| |
| 2000-11-21 Diego Novillo <dnovillo@redhat.com> |
| |
| * gcse.c (hoist_expr_reaches_here_p): Do not mark expr_bb as |
| visited before visiting it. |
| |
| 2000-11-21 Nick Clifton <nickc@redhat.com> |
| |
| * config/arm/arm.h: Accept TARGET_CPU_arm9tdmi, |
| TARGET_CPU_strongarm110 and TARGET_SPU_strongarm1100. |
| |
| * config.gcc: Accept --with-cpu=arm9 and --with-cpu=arm9tdmi. |
| |
| 2000-11-21 Richard Henderson <rth@redhat.com> |
| |
| * c-common.c (c_unsafe_for_reeval): New function. |
| (add_c_tree_codes): Register it. |
| * c-common.h: Declare it. |
| * tree.c (lang_unsafe_for_reeval): New hook. |
| (unsafe_for_reeval): Call it. |
| * tree.h: Declare it. |
| |
| 2000-11-21 Richard Henderson <rth@redhat.com> |
| |
| * config/i386/i386.c (i386_simplify_dwarf_addr): Simplify @GOT |
| references as well. |
| |
| 2000-11-21 Neil Booth <neilb@earthling.net> |
| |
| * do_includes: Revert to using cpp_read_file. |
| |
| 2000-11-21 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * loop.c (consec_sets_giv): If the reg we're examining is anything |
| but UNKNOWN_INDUCT, do nothing. |
| Reset the reg's type to UNKNOWN_INDUCT before returning. |
| |
| Mostly from Vladimir Makarov (vmakarov@redhat.com) |
| * ia64.md (attr itanium_class): Define insn types as described in |
| Itanium docs. |
| (all insn patterns): Use itanium_class, not type attributes. |
| Occasionally split alternatives as necessary. |
| (attr type): Compute from new attr itanium_class. |
| |
| 2000-11-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * tradcpp.c (output_line_command): Mark system headers as such in |
| `line' commands. |
| |
| 2000-11-21 Jakub Jelinek <jakub@redhat.com> |
| |
| * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): SPARC has .file/.loc |
| support in as as well. |
| * configure: Regenerate. |
| |
| 2000-11-20 Richard Henderson <rth@redhat.com> |
| |
| * c-lex.c (orig_filename): New variable. |
| (init_c_lex): Set it. Move call to cpp_start_read ... |
| (yyparse): ... here. New function. |
| * c-parse.in (yyparse_1): Rename the parser entry point. |
| * c-tree.h: Declare it. |
| |
| 2000-11-21 Jakub Jelinek <jakub@redhat.com> |
| |
| * expr.c (do_compare_and_jump): If op0 was replaced by promoted |
| integer constant, use type of op1 for comparison. |
| |
| 2000-11-20 Stan Shebs <shebs@apple.com> |
| |
| * config/rs6000/xm-darwin.h: New file, Darwin host definitions. |
| * config/rs6000/x-darwin: New file, Darwin host fragment. |
| * config.gcc (powerpc-*-darwin*): New host. |
| * system.h (HAVE_DESIGNATED_INITIALIZERS): Allow this to be |
| overridden by a config file. |
| |
| 2000-11-20 Neil Booth <neilb@earthling.net> |
| |
| * cppmacro.c (paste_tokens): Rename from paste_payloads. |
| Change token type after pasting spellings. |
| (paste_all_tokens): Use it. |
| * gcc.dg/cpp/paste2.c: Update test. |
| * objc/execute/paste.m: New test. |
| |
| 2000-11-20 Richard Henderson <rth@redhat.com> |
| |
| * dwarf.h (FMT_CODE): Adjust argument order; fix mapping to |
| dwarf_subscr_data_formats bits. |
| * dwarfout.c (simple_type_size_in_bits): Handle a type with |
| no computed size as size zero. |
| (field_byte_offset): Likewise. |
| (subscript_data_attribute): Handle a range with no upper bound. |
| |
| 2000-11-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * gansidecl.h (const): Check __STDC__ before undef'ing `const'. |
| |
| 2000-11-20 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-typeck.c (build_conditional_expr): When merging type |
| qualifiers for conditional expressions between a pointer and a |
| pointer to a void type, merge the qualifiers on the target types |
| rather than the pointer type. Remove obsolete conditioned out |
| code. |
| |
| 2000-11-20 Neil Booth <neilb@earthling.net> |
| |
| * c-lang.c (lang_init_options): Update call to |
| cpp_reader_init. |
| * cppmain.c (main): Similarly. |
| * fix-header.c (read_scan_file): Similarly. |
| * cp/lex.c (lang_init_options): Similarly. |
| * objc/objc-act.c (lang_init_options): Similarly. |
| * cppexp.c (parse_number): Only warn for unextended C89. |
| * cppinit.c (set_lang): New function. |
| (cpp_reader_init): Take a LANG argument and pass it to set_lang. |
| (COMMAND_LINE_OPTIONS): New option std=c++98. |
| (cpp_handle_option): Use set_lang. |
| * cpplex.c (_cpp_lex_token): Warn pedantically if not C99. |
| * cppib.h (enum_c_lang): New enumeration. Update comments. |
| |
| 2000-11-20 Will Cohen <wcohen@redhat.com> |
| |
| * calls.c (expand_call): Clear target only when target is in |
| hard register and current_function_check_memory_usage is set. |
| |
| 2000-11-20 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * toplev.c (rest_of_compilation): Run optimize_mode_switching even |
| if not optimizing. |
| * sh.c (emit_sf_insn, emit_df_insn): Just call emit_insn. |
| |
| 2000-11-19 Richard Henderson <rth@redhat.com> |
| |
| * crtstuff.c (force_to_data): Use array size 1 not 0. |
| |
| * dwarf2out.c (simple_type_size_in_bits): Handle a type with |
| no computed size as size zero. |
| (field_byte_offset): Likewise. |
| |
| 2000-11-20 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * config.gcc: Fix another typo. |
| |
| 2000-11-19 Richard Henderson <rth@redhat.com> |
| |
| * c-decl.c (grokdeclarator): Support flexible array members. |
| Use open-ended ranges for these and zero-length arrays. |
| * c-typeck.c (push_init_level): Validate the context of |
| initialization of a zero-length array. |
| * tree.c (int_fits_type_p): Be prepared for missing bounds. |
| * varasm.c (array_size_for_constructor): New. |
| (output_constructor): Use it for arrays of unspecified length. |
| * extend.texi (Zero Length): Mention C99 flexible array members. |
| Document initialization in a top-level struct as valid. |
| |
| 2000-11-19 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * config.gcc, invoke.texi: Fix errors in spelling of "deprecated". |
| |
| * alias.c (mems_in_disjoint_alias_sets_p): Do use alias sets in |
| stdarg and varargs functions. |
| |
| 2000-11-19 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * gcc.c (process_command): Define 'j' variable when |
| MODIFY_TARGET_NAME is defined. |
| |
| 2000-11-19 Richard Henderson <rth@redhat.com> |
| |
| * stor-layout.c (variable_size): Only put SAVE_EXPRs on pending_sizes. |
| |
| 2000-11-19 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
| |
| * rs6000/rs6000.c (rs6000_encode_section_info): Fix string length |
| calculation and allocation. |
| |
| 2000-11-19 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * builtins.c (c_getstr): Constify variable. |
| * gmon-sol2.c (_mcleanup): Comment out #endif labels. |
| * conflict.c (const_conflict_graph_arc): New typedef. |
| (arc_hash, arc_eq): Avoid needlessly casting away const-ness. |
| * cppmacro.c (builtin_macro): Likewise. |
| * dwarf2out.c (output_comp_unit): Constify variable. |
| * fix-header.c (v_fatal): Add ATTRIBUTE_PRINTF. |
| * protoize.c (IS_SAME_PATH_CHAR): Use TOUPPER, not toupper. |
| * ssa.c (ssa_rename_from_hash_function): Avoid needlessly casting |
| away const-ness. |
| * tradcpp.c (rescan, do_line, macroexpand, macarg): Use |
| ISALNUM/ISDIGIT/ISPRINT, not isalnum/isdigit/isprint. |
| * varasm.c (const_str_htab_hash, const_str_htab_eq, |
| compare_constant_1, record_constant_1): Constify. |
| |
| 2000-11-18 Richard Henderson <rth@redhat.com> |
| |
| * c-decl.c (grokdeclarator): Special case the creation of an |
| index for a zero-length array. |
| * tree.c (build_index_type): Revert Oct 20 change. |
| |
| 2000-11-18 Marek Michalkiewicz <marekm@linux.org.pl> |
| |
| * config/avr/avr-protos.h (avr_output_addr_vec_elt): Prototype. |
| * config/avr/avr.c (jump_tables_size): New variable. |
| (function_prologue): Initialize it as 0. |
| (function_epilogue): Add it to function_size. |
| (avr_output_addr_vec_elt): New function. Count words in jump |
| tables in jump_tables_size. Move code ... |
| * config/avr/avr.h (ASM_OUTPUT_ADDR_VEC_ELT): ... from here. |
| Call avr_output_addr_vec_elt instead. |
| * config/avr/avr.md (tablejump): Remove disabled define_expand. |
| |
| 2000-11-18 Mark Mitchell <mark@codesourcery.com> |
| |
| * configure.in: Make --enable-new-gxx-abi the default. |
| * configure: Likewise. |
| |
| 2000-11-18 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * Makefile.in (tradcpp.o, tradcif.o): Depend on tradcpp.h. |
| |
| * tradcif.y: Include tradcpp.h. Constify. Make functions static. |
| Move extern function declarations to tradcpp.h. |
| |
| * tradcpp.c: Likewise. |
| |
| * tradcpp.h: New file. |
| |
| 2000-11-18 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-decl.c (check_for_loop_decls): New function. |
| * c-parse.in (for_init_stmt): New. |
| (select_or_iter_stmt): Use for_init_stmt. |
| * c-tree.h (check_for_loop_decls): New declaration. |
| |
| 2000-11-18 Neil Booth <neilb@earthling.net> |
| |
| * cppinit.c: Update comments. |
| (cpp_reader_init): Make -imacro and -include use the standard |
| #include "" search path. |
| (do_includes): New function. |
| |
| 2000-11-18 Ben Elliston <bje@redhat.com> |
| |
| * config/sh/crt1.asm (start_l): Move PC-relative move instruction |
| out of a branch delay slot. |
| |
| 2000-11-17 Richard Henderson <rth@redhat.com> |
| |
| * config/alpha/elf.h (PREFERRED_DEBUGGING_TYPE): Set to DWARF2_DEBUG. |
| (ASM_SPEC): Disable and enable .mdebug based on -gstabs. |
| (ASM_FILE_START): Only write out ecoff .file directive if |
| emitting mdebug debugging. |
| |
| 2000-11-17 Richard Henderson <rth@redhat.com> |
| |
| * configure.in (HAVE_AS_DWARF2_DEBUG_LINE): New. Detect |
| whether as accepts .file/.loc and produces dwarf2 line info. |
| * dwarf2out.c (DWARF2_ASM_LINE_DEBUG_INFO): Default on if |
| the assembler supports it. |
| * config.in, configure: Regenerate. |
| |
| 2000-11-17 Richard Henderson <rth@redhat.com> |
| |
| * fixinc/mkfixinc.sh: Don't disable fixincludes for any linux*. |
| |
| 2000-11-17 Jim Wilson <wilson@redhat.com> |
| |
| * config/ia64/ia64.c (emit_insn_group_barriers, case CALL_INSN): |
| Don't clear need_barrier is next_insn is a CALL_INSN, or has |
| instruction type B or UNKNOWN. |
| |
| 2000-11-17 Neil Booth <neilb@earthling.net> |
| |
| * cpperror.c (print_file_and_line): Don't display line number if 0. |
| |
| 2000-11-17 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * ggc.h: Delete ggc_add_string_root and ggc_mark_string. Add |
| digit_vector and digit_string. |
| * stringpool.c (digit_vector): New. |
| (ggc_alloc_string): Use digit_string. |
| |
| * stmt.c (digit_strings): Delete. |
| (init_stmt): Do not initialize digit_strings. |
| (expand_asm_operands): Use ggc.h's digit_string macro. |
| * toplev.c (mark_file_stack): Delete. |
| (compile_file): Don't call init_tree_codes. |
| (main): No need to make the file stack a GC root. |
| * tree.c (init_tree_codes): Delete. |
| * tree.h (init_tree_codes): Delete. |
| |
| * c-lex.c: Don't include ggc.h. |
| (mark_splay_tree_node, mark_splay_tree): Delete. |
| (init_c_lex): No need to ggc_strdup string constant. Don't add |
| file_info_tree to GGC roots. |
| (cb_enter_file, cb_rename_file): No need to ggc_strdup |
| ip->nominal_fname. |
| |
| * Makefile.in (c-lex.o): No longer depends on $(GGC_H). |
| |
| * dbxout.c (dbxout_init), |
| dwarf2out.c (dwarf2out_line), |
| ggc-common.c (ggc_mark_rtx_children, ggc_mark_trees), |
| varasm.c (mark_const_hash_entry, mark_pool_constant, init_varasm_once), |
| xcoffout.c (xcoffout_source_file), |
| i386.c (load_pic_register): |
| Delete call(s) to ggc_add_string_root and/or ggc_mark_string. |
| |
| * except.c (create_rethrow_ref), |
| profile.c (init_edge_profiler), |
| toplev.c (compile_file), |
| varasm.c (named_section, assemble_static_space, |
| assemble_trampoline_template, output_constant_def, force_const_mem), |
| i386.c (load_pic_register), |
| ia64.c (ia64_encode_section_info), |
| rs6000.c (rs6000_emit_load_toc_table, create_TOC_reference, |
| rs6000_emit_prologue, rs6000_emit_epilogue), |
| rs6000.md (load_toc_aix_si, load_toc_aix_di): |
| Change ggc_alloc_string (var, -1) to ggc_strdup (var). |
| |
| * profile.c (output_func_start_profiler), |
| tree.c (make_node), |
| i386.c (load_pic_register): No need to ggc_strdup string constant. |
| |
| 2000-11-17 Hans-Peter Nilsson <hp@axis.com> |
| |
| * Makefile.in (config.status): Depend on config.gcc. |
| * configure.in <for machine in $build $host $target>: Move |
| contents of loop into config.gcc, removing autoconf quoting. |
| Fix changequote bug for alpha*-*-vxworks*. |
| * configure: Regenerate. |
| * config.gcc: New. |
| |
| 2000-11-16 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * c-parse.in (if_prefix): Find the filename and line number at |
| $-2 and $-1 respectively. |
| * diagnostic.c (error_recursion): Add missing newline, use |
| fputs, translate string. |
| |
| 2000-11-16 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * stringpool.c: New file. |
| * ggc-common.c (ggc_mark_string_ptr, ggc_add_string_root): Delete. |
| (ggc_alloc_string): Now in stringpool.o. |
| * ggc-page.c, ggc-simple.c: Do not define or allocate empty_string. |
| * ggc.h: Delete prototype of ggc_add_string_root. #define |
| ggc_add_string_root and ggc_mark_string to nothing. Prototype |
| init_stringpool and stringpool_statistics. |
| (ggc_alloc_string): Returns a const char *. |
| * tree.c (hash_table, do_identifier_warnings): Delete. |
| (init_obstacks): Don't initialize the identifier hash table. |
| (get_identifier, maybe_get_identifier, start_identifier_warnings, |
| set_identifier_size): Now in stringpool.c. |
| * tree.h (struct tree_string): Constify pointer field. |
| (approx_sqrt): Prototype. |
| |
| * Makefile.in (stringpool.o): Add rule, mention in OBJS. |
| |
| * toplev.c (approx_sqrt): New function. |
| (compile_file): Call stringpool_statistics if mem_report is on. |
| (main): Call init_stringpool. |
| |
| * builtins.c (c_strlen), c-decl.c (finish_decl), c-lex.c |
| (process_directive), c-typeck.c (constructor_asmspec, struct |
| initializer_stack, start_init), except.c (create_rethrow_ref), |
| stmt.c (digit_strings), toplev.c (decode_f_option), tree.c |
| (built_in_filename), varasm,c (in_named_name, |
| assemble_static_space, struct constant_descriptor, struct |
| deferred_string, struct pool_constant, force_const_mem), |
| i386.c (pic_label_name, global_offset_table_name), rs6000.c |
| (rs6000_emit_prologue, rs6000_emit_epilogue) : Constify a char *. |
| |
| * c-common.c (combine_strings): Combine strings in scratch |
| buffer, then pass to build_string. |
| * optabs.c (init_libfuncs), profile.c (init_edge_profiler, |
| output_func_start_profiler), stmt.c (init_stmt), alpha.c |
| (alpha_need_linkage), arm.c (arm_encode_call_attribute), |
| i386.c (load_pic_register), ia64.c (ia64_encode_section_info), |
| rs6000.c (rs6000_encode_section_info): Create string in |
| scratch buffer, then pass to ggc_alloc_string. |
| |
| * stmt.c (expand_asm_operands): If we must adjust the |
| constraint strings, do so by creating a new one, not by |
| modifying the old one in place. Constify some char *s. |
| * config/pa/pa.c (hppa_encode_label): Drop unnecessary second |
| argument. Create string in scratch buffer, then pass to |
| ggc_alloc_string. |
| * config/pa/pa-protos.h: Update prototype. |
| * config/pa/elf.h, config/pa/pa.h, config/pa/som.h: |
| hppa_encode_label takes only one argument. |
| |
| 2000-11-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * mcore.c (mcore_expand_prolog): Call xmalloc/xrealloc, not |
| malloc/realloc. |
| |
| * cpplib.c (glue_header_name): Likewise. |
| |
| * fixincl.c (run_compiles, start_fixer): Likewise. |
| |
| * fixlib.c (load_file_data): Likewise. |
| |
| * mkdeps.c (munge): Likewise. |
| |
| 2000-11-17 Hans-Peter Nilsson <hp@axis.com> |
| |
| * defaults.h [EH_FRAME_SECTION_ASM_OP] (EH_FRAME_SECTION): Remove |
| trailing ';'. Fix formatting. |
| |
| 2000-11-16 Jim Wilson <wilson@redhat.com> |
| |
| * config/ia64/ia64.h (MASK_INLINE_DIV_LAT, MASK_INLINE_DIV_THR): |
| Shift masks left by one to avoid conflict. |
| |
| * config/ia64/ia64.c (ia64_encode_section_info): Disallow decls with |
| DECL_EXTERNAL set. |
| |
| 2000-11-16 Nick Clifton <nickc@redhat.com> |
| |
| * config/arm/arm.c (output_arm_prologue): Note nested functions. |
| (arm_expand_prologue): For nested functions preserve the |
| static chain register during stack frame creation. |
| |
| * config/arm/arm.h (STATIC_CHAIN_REGNUM): Change to 12. |
| (ARM_INITIAL_FRAME_ELIMINATION_OFFSET): For a nested function |
| with a stack frame there is a 4 byte gap between the arg |
| pointer and the hard frame pointer (used to preserve the |
| static chain register during stack frame creation). |
| |
| 2000-11-16 DJ Delorie <dj@redhat.com> |
| |
| * rtl.c (read_rtx): Provide suitable names for unnamed |
| define_insn and define_insn_and_split patterns, based on file |
| and line numbers. |
| |
| 2000-11-15 Neil Booth <neilb@earthling.net> |
| |
| * cpplib.c (start_directive, end_directive): New functions. |
| (_cpp_handle_directive, run_directive): Use them. |
| (_cpp_handle_directive): Don't -Wtraditional on indented |
| null directives. |
| (_cpp_push_buffer): Don't re-clear was_skipping. |
| * cpplib.h (struct cpp_reader): New member la_saved. |
| * cppmacro.c (cpp_get_token): Don't interpret _Pragma in |
| directives. |
| |
| gcc.dg/cpp/_Pragma1.c: Update. |
| gcc.dg/cpp/_Pragma2.c: New test. |
| |
| 2000-11-15 Mark Mitchell <mark@codesourcery.com> |
| |
| * toplev.c (wrapup_global_declarations): Don't write out |
| artificial static variables that aren't needed. |
| |
| 2000-11-15 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * ia64.c (struct group): New structure. |
| (last_group): New static array. |
| (group_idx): New static variable. |
| (emit_group_barrier_after, errata_find_address_regs, errata_emit_nops): |
| New static functions. |
| (emit_insn_group_barriers): Initialize and keep track of group_idx |
| and last_group. |
| Call errata_emit_nops if TARGET_B_STEP or TARGET_A_STEP. |
| Replace all calls to emit_insn_after that emit a group barrier to use |
| emit_group_barrier_after. |
| * ia64.h (MASK_B_STEP): New. |
| (other MASK_XXX macros): Renumbered. |
| (TARGET_B_STEP): New. |
| (TARGET_SWITCHES): Add -mb-step. |
| |
| 2000-11-15 Fred Fish <fnf@be.com> |
| |
| * fixinc/mkfixinc.sh (fixincludes): Add *-*-beos* to list of |
| machines for which fixincludes is not needed. |
| * config/i386/x-beos (STMP_FIXPROTO): Don't run fixproto. |
| |
| 2000-11-15 Jason Merrill <jason@redhat.com> |
| |
| * diagnostic.c (finish_abort): New fn. |
| (fancy_abort, error_recursion): Use it. |
| * toplev.c (crash_signal): Likewise. |
| * diagnostic.h: Declare it. |
| |
| 2000-11-13 Andrew Haley <aph@redhat.com> |
| |
| * tree.c (build_type_no_quals): New function. |
| * tree.h (build_type_no_quals): Declare. |
| * c-common.c (c_get_alias_set): When considering type |
| compatibility for pointer types, ignore cv-qualifiers anywhere in |
| a pointer chain. |
| |
| 2000-11-15 Graham Stott <grahams@redhat.com> |
| |
| * regrename.c (scan_rtx_rtx): Skip to the next chain on |
| encountering a terminated chain. |
| |
| 2000-11-14 Mark Mitchell <mark@codesourcery.com> |
| |
| * configure.in: Move check for V3 above check for C++ header-file |
| directory. |
| * configure: Regenerated. |
| |
| 2000-11-14 DJ Delorie <dj@redhat.com> |
| |
| * config/v850/v850.c: Remove obstacks. |
| |
| Tue Nov 14 21:54:31 2000 Marek Michalkiewicz <marekm@linux.org.pl> & Denis Chertykov <denisc@overta.ru> |
| |
| * config/avr/avr.c (avr_case_values_threshold): New. |
| (avr_override_options): Set it depending on options, make it large |
| when not optimizing to work around "unable to generate reloads". |
| |
| * config/avr/avr.h (TARGET_SWITCHES): Add -mno-tablejump option. |
| (EXTRA_SECTION_FUNCTIONS): Make the .progmem.gcc_sw_table section |
| executable if not AVR_MEGA. Make sure jump tables are word-aligned. |
| (JUMP_TABLES_IN_TEXT_SECTION): Define as 0, not 1. |
| (ASM_OUTPUT_ADDR_VEC_ELT): Optimize, use "rjmp" if not AVR_MEGA. |
| (avr_case_values_threshold): Declare as extern int. |
| (CASE_VALUES_THRESHOLD): Define as avr_case_values_threshold. |
| |
| * config/avr/avr.md (tablejump): Removed. |
| (*tablejump_rjmp): New for jump tables made from "rjmp" instructions. |
| (*tablejump_lib, *tablejump_enh, *tablejump): Change to expect the |
| index in the table, not multiplied by 2. |
| (casesi): Change to match the above insns. Always enable. |
| |
| * config/avr/libgcc.S (__tablejump__): Rename to __tablejump2__. |
| Change to expect the word address of the table, multiply it by 2 |
| here and not in the caller. Change "adiw" to faster "inc". |
| |
| 2000-11-14 Neil Booth <neilb@earthling.net> |
| |
| * cppexp.c (parse_defined): Call cpp_get_token not |
| _cpp_get_token. |
| (lex): Similarly. |
| * cpplex.c (cpp_output_line): Similarly. |
| * cpplib.c (glue_header_name, do_line, do_ident, |
| parse_answer, parse_assertion): Similarly. |
| (_cpp_handle_diretive): Don't save to lookaheads |
| when processing directives. |
| * cppmacro.c (parse_arg, expand_arg): Call cpp_get_token not |
| _cpp_get_token. |
| (funlike_invocation_p): Don't save to lookaheads |
| when pre-expanding arguments. |
| (_cpp_get_token): Delete. |
| (cpp_get_token): Merge contents of _cpp_get_token. |
| |
| 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
| |
| * builtins.c (expand_builtin_setjmp): Set |
| current_function_calls_setjmp. |
| (expand_builtin_longjmp): Set current_function_calls_longjmp. |
| |
| * config/sparc/sparc.md (builtin_setjmp_setup): New expand. |
| (do_builtin_setjmp_setup): New insn. |
| |
| Tue Nov 14 12:34:56 2000 Richard Kenner <kenner@vlsi1.ultra.nyu.edu> |
| |
| * tree.c (get_unwidened): Use host_integerp and tree_low_cst. |
| (int_fits_type_p): For variable bounds, call force_fit_type. |
| |
| 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
| |
| * varasm.c (struct deferred_string): New structure. |
| (const_str_htab): New variable. |
| (STRHASH): New macro. |
| (mark_const_str_htab_1, mark_const_str_htab, const_str_htab_hash, |
| constr_str_htab_eq, const_str_htab_del): New functions. |
| (output_constant_def): Add DEFER argument, defer string |
| constants until mark_constant_pool time if requested. |
| (mark_constant_pool): Walk the insn chain even if const_str_htab is |
| not empty. |
| (mark_constants): If a SYMBOL_REF for deferred string is found, |
| output it and remove from hash table. |
| (output_addressed_constants): Set DEFER to 0 in call to |
| output_constant_def. |
| * rtl.h (STRING_POOL_ADDRESS_P): Define. |
| (output_constant_def): Adjust prototype. |
| * expr.c (expand_expr): Set DEFER to 1 in call to output_constant_def. |
| |
| 2000-11-14 Chandrakala Chavva <cchavva@redhat.com> |
| |
| * optabs.c (expand_complex_ab):: Use overflow-trapping optabs for |
| signed types if flag_trapv. |
| |
| 2000-11-14 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * tradcpp.c, tradcif.y: Update FSF mailing address, delete |
| reference to GPLv1. |
| |
| 2000-11-14 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-common.h (CTI_C_SIZE_TYPE): Update comment. |
| |
| 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
| |
| * varasm.c (struct varasm_status): Change x_const_rtx_sym_hash_table |
| to array of pool_constnat pointers. |
| (struct pool_constant): Add next_sym and label members. |
| (struct pool_sym): Remove. |
| (init_varasm_status): Change pool_sym into pool_constant. |
| (mark_pool_constant): Mark pc->label string as well. |
| (mark_pool_sym_hash_table): Remove. |
| (mark_varasm_status): Remove it from caller as well. |
| (free_varasm_status): Don't free pool_sym structures. |
| (force_const_mem): Don't allocate pool_sym structure, instead |
| fill pool->label and chain it into rtx_sym hash table. |
| (find_pool_constant, mark_constant_pool): Use pool_constant instead |
| of pool_sym. |
| |
| 2000-11-14 Jakub Jelinek <jakub@redhat.com> |
| |
| * reload1.c (emit_input_reload_insns): Honor forcing of constants |
| into memory by PREFERRED_RELOAD_CLASS NO_REGS. |
| |
| 2000-11-14 Michael Matz <matzmich@cs.tu-berlin.de> |
| |
| * dominance.c: New file. |
| * Makefile.in (OBJS): Add dominance.o. |
| |
| * flow.c (compute_flow_dominators): Remove. |
| (compute_immediate_dominators): Remove. |
| (compute_immediate_postdominators): Remove. |
| * basic-block.h: Remove their prototypes. |
| (calculate_dominance_info): Add prototype. |
| |
| * dce.c (eliminate_dead_code): Change calls to above functions. |
| Don't compute dominators but only immediate dominators. |
| * flow.c (flow_loops_find): Change callers. |
| * gcse.c (compute_code_hoist_data): Likewise. |
| * haifa-sched.c (schedule_insns): Likewise. |
| * ifcvt.c (if_convert): Likewise. |
| * ssa.c (convert_to_ssa): Likewise, and only compute immediate |
| dominators. |
| |
| 2000-11-14 Richard Henderson <rth@redhat.com> |
| |
| * stmt.c (warn_if_unused_value): Don't warn if the expression |
| has side effects. |
| |
| * c-typeck.c (c_sizeof): Fold result to c_size_type_node. |
| (c_sizeof_nowarn, c_alignof, c_alignof_expr): Likewise. |
| |
| 2000-11-13 Franz Sirl <Franz.Sirl-kernel@lauterbach.com> |
| |
| * loop.c (basic_induction_var): Revert accidental checkin. |
| |
| 2000-11-13 Hans-Peter Nilsson <hp@axis.com> |
| |
| * c-lex.c (cb_leave_file): Harmonize conditions and order of |
| statements to those of process_directive for (action == act_pop). |
| |
| * collect2.c (main): Pass on -B options from COLLECT_GCC_OPTIONS. |
| |
| * local-alloc.c (equiv_init_movable_p): References to CC0 are not |
| movable. |
| |
| 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-parse.in (stmts_and_decls): Deprecate use of label at end of |
| compound statement. |
| |
| 2000-11-13 Neil Booth <neilb@earthling.net> |
| |
| * cpplex.c (_cpp_lex_token): CPP_COMMENT and true CPP_EOF |
| cases return without MI check. |
| * cpplib.c (do_diagnostic): Take boolean of whether to |
| print the directive name. |
| (do_error, do_warning): Update. |
| (do_pragma_dependency): Use it. |
| * cpplib.h (VARARGS_FIRST): Delete. |
| (struct cpp_token): Delete integer. |
| * cppmacro.c (enter_macro_context): Move disabled check |
| to _cpp_get_token. |
| (_cpp_get_token): Simplify into a single loop. |
| |
| 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
| |
| * configure.in: Use 'test -f' not '[ -e'. |
| * configure: Regenerated. |
| |
| 2000-11-13 DJ Delorie <dj@redhat.com> |
| |
| * config/mn10300/mn10300.md (store_movm): Note which registers are |
| really used or clobbered. |
| |
| 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-parse.in (ends_in_label): Remove from %union and %type. |
| (decls, stmts, lineno_stmt_or_labels, xstmts, |
| lineno_stmt_or_label, stmt_or_label): Remove. |
| (stmts_and_decls, lineno_stmt_decl_or_labels_ending_stmt, |
| lineno_stmt_decl_or_labels_ending_decl, |
| lineno_stmt_decl_or_labels_ending_label, |
| lineno_stmt_decl_or_labels_ending_error, |
| lineno_stmt_decl_or_labels, compstmt_contents_nonempty, |
| lineno_stmt, lineno_label): New. |
| (compstmt_nostart): Use compstmt_contents_nonempty. |
| |
| 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-common.c (boolean_increment): New function. |
| * c-common.h (enum c_tree_index): Add CTI_C_BOOL_TYPE, |
| CTI_C_BOOL_TRUE and CTI_C_BOOL_FALSE. |
| (c_bool_type_node, c_bool_true_node, c_bool_false_node): Define. |
| (boolean_increment): Declare. |
| * c-convert.c (convert): Allow for BOOLEAN_TYPE. |
| * c-decl.c (init_decl_processing): Create boolean nodes. |
| (finish_struct): Allow for _Bool bitfields. |
| * c-parse.in (reswords): Add _Bool. |
| (rid_to_yy): Allow for RID_BOOL. |
| * c-typeck.c (default_conversion): Make booleans promote to int. |
| (convert_arguments, build_unary_op, build_modify_expr, |
| convert_for_assignment): Allow for booleans. |
| * ginclude/stdbool.h: Make conforming to C99. |
| |
| 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-parse.in (c99_block_start, c99_block_end, |
| c99_block_lineno_labeled_stmt): New. |
| (simple_if, do_stmt_start): Use c99_block_lineno_labeled_stmt. |
| (stmt): Split off selection and iteration statements into... |
| (select_or_iter_stmt): New. Use c99_block_lineno_labeled_stmt. |
| |
| 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * invoke.texi (-Wtrigraphs, -fdump-translation-unit, -save-temps, |
| -time): Update. |
| |
| 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
| |
| * arm.md (mulsidi3adddi, umulsidi3adddi): Revert previous change. |
| Rewrite to avoid use of match_dup. Don't try to tie registers that |
| are not in the same mode. |
| |
| 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * invoke.texi: Update lists of languages and suffixes supported. |
| |
| 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * configure.in: Take toplevel configure arguments from the |
| environment to create configargs.h and substitute |
| gcc_config_arguments, taking account of any existing configargs.h |
| if reconfiguring. |
| * configure: Regenerate. |
| * gccbug.in: Include toplevel configure arguments in gccbug. |
| |
| 2000-11-13 Richard Earnshaw <rearnsha@arm.com> |
| |
| * varasm.c (struct constant_descriptor): Put CONTENTS inside a |
| union to make it well-aligned. Update all uses. |
| |
| 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * c-parse.in (initelt): Give appropriate pedantic warnings, |
| depending on flag_isoc99, for non-ISO syntax and for C99 syntax |
| outside C99 mode. |
| (designator): If pedantic, pedwarn for a designator specifying a |
| range of elements. |
| * c-typeck.c (set_init_index, set_init_label): Don't pedwarn for |
| these cases. |
| * extend.texi: Document the C99 syntax as the preferred syntax, |
| and the pre-2.5 syntax as obsolete. Mention use of designator |
| lists for nested subobjects. |
| |
| 2000-11-13 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * diagnostic.c (vbuild_message_string, output_do_printf, vnotice): |
| Add ATTRIBUTE_PRINTF. |
| * tradcpp.c (v_message, warning, error, fatal, error_with_line): |
| Add ATTRIBUTE_PRINTF*. |
| |
| 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
| |
| * function.c (assign_parms): When calling put_var_into_stack, make |
| sure that there are no hidden pending sequences. |
| |
| 2000-11-12 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * builtins.c (expand_builtin): Handle BUILT_IN_INDEX and |
| BUILT_IN_RINDEX. Add missing checks for BUILT_IN_STRCHR and |
| BUILT_IN_STRRCHR. |
| |
| * builtins.def (BUILT_IN_INDEX, BUILT_IN_RINDEX): New entries. |
| |
| * c-common.c (c_common_nodes_and_builtins): Declare index and |
| rindex when nonansi builtins are allowed. |
| |
| * extend.texi (index, rindex): Document new builtins. |
| |
| 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
| |
| * configure.in: Turn on libstdc++ V3 by default. |
| * configure: Regenerated. |
| |
| * fixinc/mkfixinc.sh: Use the ordinary fixincludes on Solaris. |
| |
| 2000-11-12 Jakub Jelinek <jakub@redhat.com> |
| |
| * reload1.c (set_label_offsets): Go inside of PARALLELs. |
| |
| 2000-11-12 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * invoke.texi: Clean up option summary. |
| |
| 2000-11-12 Nick Clifton <nickc@redhat.com> |
| |
| * config/mcore/mcore.c: Fix comment formating, and adjust sequence |
| of #include headers. |
| |
| 2000-11-12 Marc Espie <espie@openbsd.org> |
| |
| * configure.in: Fix filds test. |
| * configure: Regen. |
| |
| 2000-11-12 Mark Mitchell <mark@codesourcery.com> |
| |
| * jump.c (delete_computation): Don't assume that just because an |
| instruction sets a register, that register is dead. |
| |
| 2000-11-12 Neil Booth <neilb@earthling.net> |
| |
| * cppexp.c: Don't worry about pfile->skipping. |
| * cpplib.c (struct if_stack): Make was_skipping unsigned char. |
| (cpp_handle_directive): Save pfile->skipping in struct cpp_buffer |
| for handled directives. |
| (skip_rest_of_line): Use _cpp_lex_token after popping contexts |
| and releasing lookaheads. |
| (do_ifdef, do_ifndef, do_if): Use buffer->was_skipping. |
| (do_else, do_elif, push_conditional): Update logic. |
| (do_endif): Set buffer->was_skipping rather than pfile->skipping. |
| (unwind_if_stack): Inline into cpp_pop_buffer. |
| (cpp_push_buffer): Clear ifs->was_skipping for cpp_handle_directive. |
| * cpplex.c (_cpp_lex_token): Clear skipping on EOF. Handle |
| multiple-include optimisation. |
| * cpplib.h (struct cpp_buffer): New member was_skipping. |
| * cppmacro.c (_cpp_get_token): Loop whilst pfile->skipping. This |
| works because skipping == 0 in directives. |
| (_cpp_release_lookahead): Renamed from release_lookahead. |
| (cpp_get_token): No need to check skipping as _cpp_get_token does |
| this for us. No need to handle MI optimisation. |
| |
| Sat Nov 11 21:14:02 2000 Mark P Mitchell <mark@codesourcery.com> |
| |
| * fixinc/inclhack.def (sunos_matherr_decl): Bypass matherr |
| declarations that use `__MATH_EXCEPTION' in their prototypes, too. |
| * fixinc/fixincl.x: Regenerated. |
| |
| 2000-11-11 Bruce Korb <bkorb@gnu.org> |
| |
| * fixinc/inclhack.def (avoid_bool_type): avoid commenting out #endif |
| (avoid_wchar_t_type): ditto |
| * fixinc/fixinc.irix: obsoleted |
| |
| 2000-11-11 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * configure.in: Don't add $outputs to all_lang_makefiles. Add |
| $srcdir/$s/Makefile.in if it exists. |
| * configure: Regenerate. |
| |
| Sat Nov 11 18:41:20 2000 Mark P Mitchell <mark@codesourcery.com> |
| |
| * fixinc/mkfixinc.sh: Use the ordinary fixincludes on IRIX. |
| |
| 2000-11-11 Jason Merrill <jason@redhat.com> |
| |
| * function.c (assign_parms): If TREE_ADDRESSABLE is set, try to |
| give the parm a register and then call put_var_into_stack. |
| * stmt.c (expand_decl): Likewise. |
| |
| 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * gcc.texi: Adjust wording. |
| |
| 2000-11-11 Mark Mitchell <mark@codesourcery.com> |
| |
| * fixinc/inclhack.def (avoid_wchar_t_type): New fix. |
| * fininc/fixincl.x: Regenerated. |
| |
| 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * invoke.texi: Correct spelling of -foptimize-register-move. |
| |
| 2000-11-11 Neil Booth <neilb@earthling.net> |
| |
| Remove CPP_PLACEMARKERs. |
| |
| * cppexp.c (lex): Don't handle CPP_PLACEMARKER. |
| * cpplex.c (_cpp_lex_token): Rename skip_newlines to next_bol |
| * cpplib.c (skip_rest_of_line, check_eol, cpp_push_buffer): |
| Similarly. |
| * cpplib.h: Remove CPP_PLACEMARKER. |
| (struct lexer_state): Rename skip_newlines to next_bol. |
| * cppmacro.c (stringify_arg): Don't handle CPP_PLACEMARKER. |
| Simplify prev_white handling as a result. |
| (paste_all_tokens): Don't worry about CPP_PLACEMARKERs. |
| (parse_arg): Empty arguments are now empty, not CPP_PLACEMARKERs. |
| (parse_args): Similarly. Update argument count tests. |
| (enter_macro_context): Return 2 to indicate an empty macro. |
| (replace_args): Don't bother pre-expanding an empty argument. |
| Handle placemarkers and ## extension during pre-expansion. |
| (cpp_get_token): Handle empty macro expansions. Don't worry |
| about CPP_PLACEMARKERs. |
| (_cpp_create_definition): Empty macros are now empty. |
| (cpp_macro_definition): Don't special case empty macros. |
| * scan-decls.c: Don't bother with CPP_PLACEMARKERs. |
| * c-lex.c: Similarly. |
| |
| 2000-11-11 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * gcc.texi, invoke.texi: Add new section discussing language |
| standards; link to it where appropriate; refer to ISO C instead of |
| ANSI C. |
| |
| 2000-11-11 Alexandre Oliva <aoliva@redhat.com> |
| |
| * builtins.c (std_expand_builtin_va_start): Take PARM_BOUNDARY |
| into account. |
| |
| * config/sh/sh.h (MODES_TIEABLE_P): Don't tie SFmode to other FP |
| modes. |
| |
| 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * gcc.texi, gcov.texi: Update dates and version numbers. |
| |
| 2000-11-10 Zack Weinberg <zack@wolery.stanford.edu> |
| |
| * configure.in: Remove AC_PROG_LEX and AC_PROG_YACC. Look for |
| flex and bison, specifically, first in a unified build and |
| then installed on the system. |
| * Makefile.in: Set BISON to @BISON@, FLEX to @FLEX@. Rename |
| LEXFLAGS to FLEXFLAGS. Adjust ORDINARY_FLAGS_TO_PASS to |
| match. |
| |
| (collect2.o, gcc.o, prefix.o, toplev.o, alloca.o, intl.o, |
| cppdefault.o): Remove pointless sed munging of source file |
| name. |
| |
| 2000-11-10 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * reload.c (find_reloads_address_1, case POST_MODIFY): Use RELOAD_OTHER |
| for address reloads. Push replacements for REG_INC notes. |
| (regno_clobbered_p): New arg SETS. Examine SETs if it's nonzero. All |
| callers changed. |
| * reload1.c (choose_reload_regs): Registers set in the insn can't be |
| used for RELOAD_OTHER reloads. |
| |
| 2000-11-10 Mark Mitchell <mark@codesourcery.com> |
| |
| * c-dump.h: New file. |
| |
| 2000-11-10 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
| |
| * alpha.c (check_float_value): Use memcpy, not bcopy. |
| * arm.c (output_move_double): Likewise. |
| * arm.md: Likewise. |
| * m88k.c (legitimize_operand): Likewise. |
| * m88k.h (ORDER_REGS_FOR_LOCAL_ALLOC): Likewise. |
| * m88k.md: Likewise. |
| * mips.c (override_options): Likewise. |
| * mips.md: Likewise. |
| * romp.c (output_fpops): Likewise. |
| * rs6000.c (rs6000_override_options): Likewise. |
| * sh.md: Likewise. |
| * vax.c (check_float_value): Likewise. |
| |
| * emit-rtl.c (copy_rtx_if_shared, init_emit_once): Likewise. |
| * expmed.c (synth_mult): Likewise. |
| * final.c (add_bb_string): Likewise. |
| * genattr.c (main): Likewise. |
| * genattrtab.c (attr_string, simplify_cond, copy_rtx_unchanging): |
| Likewise. |
| * jump.c (thread_jumps): Likewise. |
| * prefix.c (save_string): Likewise. |
| * real.h (REAL_VALUE_FROM_CONST_DOUBLE): Likewise. |
| * regclass.c (init_reg_sets, init_reg_sets_1): Likewise. |
| * reload1.c (reload, eliminate_regs): Likewise. |
| |
| 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * gcc.texi (Service): Update to reflect current practice and |
| location of the GNU service directory. |
| |
| 2000-11-09 Bernd Schmidt <bernds@redhat.co.uk> |
| |
| * regrename.c (build_def_use): Mark contents of REG_INC notes as |
| needing replacement. |
| |
| * config/ia64/ia64.md (extendsfdf2, extendsftf2, extenddftf2): Emit |
| a no-op move if regs are equal. |
| * toplev.c (rest_of_compilation): Do the noop moves elimination pass |
| when calling jump after post-reload splitting. |
| |
| 2000-11-09 Jan van Male <jan.vanmale@fenk.wau.nl> |
| |
| * c-tree.texi: Fix typos. |
| * extend.texi: Likewise |
| * gcov.texi: Likewise |
| * rtl.texi: Likewise |
| * tm.texi: Likewise |
| |
| 2000-11-09 Hans-Peter Nilsson <hp@axis.com> |
| |
| * c-lex.c [! NO_IMPLICIT_EXTERN_C] (cb_enter_file): Check |
| in_system_header and flags[1] before dereferencing flags[2]. |
| |
| 2000-11-09 Matthew Hiller <hiller@redhat.com> |
| |
| * reload1.c (reload_combine): Fixed calculation of |
| first_index_reg, last_index_reg. |
| |
| 2000-11-09 Mark Mitchell <mark@codesourcery.com> |
| |
| * c-dump.c (dequeue_and_dump): Dump function bodies. |
| |
| * Makefile.in (C_AND_OBJC_OBJS): Add c-dump.o. |
| (c-dump.o): New target. |
| * c-common.h (flag_dump_translation_unit): New variable. |
| (C_TYPE_QUALS): New macro. |
| (strip_array_types): New function. |
| (DECL_C_BIT_FIELD): New macro. |
| (SET_DECL_C_BIT_FIELD): Likewise. |
| (CLEAR_DECL_C_BIT_FIELD): Likewise. |
| (dump_info_p): New typedef. |
| (dump_tree_fn): Likewise. |
| (lang_dump_tree): New variable. |
| (dump_node_to_file): New function. |
| * c-common.c (flag_dump_translation_unit): Define it. |
| (strip_array_types): New function. |
| * c-decl.c (c_decode_option): Handle -fdump-translation-unit. |
| * c-lang.c (finish_file): Call dump_node_to_file if |
| flag_dump_translation_unit. |
| * c-semantics.c (mark_rtl_for_local_static): Fix typo in comment. |
| * c-tree.h (DECL_C_BIT_FIELD): Remove declaration. |
| * c-dump.c: New file. |
| |
| 2000-11-09 Christopher Faylor <cgf@cygnus.com> |
| |
| * config/i386/cygwin.h: Add mingw startfile prefix. |
| |
| 2000-11-09 Richard Henderson <rth@redhat.com> |
| |
| * flow.c (invalidate_mems_from_set): Split out from ... |
| (mark_set_1): ... here. |
| (try_pre_increment_1): Use it. Use propagate_block_delete_insn |
| instead of turning insn into a NOTE_INSN_DELETED. |
| |
| 2000-11-10 Joseph S. Myers <jsm28@cam.ac.uk> |
| |
| * extend.texi, invoke.texi: Move documentation of builtin versions |
| of C library functions to one place and update. |
| |
| 2000-11-09 Richard Henderson <rth@redhat.com> |
| |
| * fold-const.c (fold): Compare TYPE_MAIN_VARIANT rather than |
| the types themselves to discover type equivalence. |
| |
| 2000-11-09 Mike Stump <mrs@wrs.com> |
| |
| * Makefile.in (distclean): Remove a few extra leftovers. |
| |
| 2000-11-09 Richard Henderson <rth@redhat.com> |
| |
| * recog.c (validate_replace_rtx_1): Consider subregs when |
| replacing a register with a constant inside a sign/zero_extend. |
| |
| * config/alpha/linux.h (HANDLE_PRAGMA_PACK_PUSH_POP): Define. |
| |
| 2000-11-09 Geoffrey Keating <geoffk@redhat.com> |
| |
| * c-decl.c (finish_struct): When a structure is completed, |
| check all its variant types for completeness. |
| |
| 2000-11-09 Neil Booth <neilb@earthling.net> |
| |
| * cpphash.c: Move cpp_defined here from cpplib.c. |
| * cpplib.c: Update comments, move cpp_defined to cpphash.c. |
| * cpplex.c (_cpp_lex_token): Don't leave the lexer at EOL. |
| * cppmacro.c (cpp_get_token): Update comments, no need now |
| to catch the CPP_EOF meaning EOL case. |
| |
| 2000-11-08 Geoffrey Keating <geoffk@redhat.com> |
| |
| * config/sparc/sparc.c (sparc_va_arg): When the required alignment |
| is more than that provided, copy to a temporary. |
| |
| 2000-11-09 Alexandre Oliva <aoliva@redhat.com> |
| |
| * mklibgcc.in (EXTRA_MULTILIB_PARTS): Prevent `make' from |
| interpreting $out as a macro assignment. |
| * Makefile.in (T_TARGET): New auxiliary macro and target. |
| (all): Add a target right in the beginning, so that we don't build |
|