+2003-10-13 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * Makefile.in, configure.in, config.host, mkheaders.in: Replace
+ uses of ${target_alias} for directory names (and other places which
+ won't like the empty string) with ${target_noncanonical}. Introduce
+ call early in configure.in to _GCC_TOPLEV_NONCANONICAL_TARGET so it's
+ available.
+ * configure: Regenerate.
+
+2003-10-13 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * config/arm/iwmmxt.md (cond_iwmmxt_movsi_insn): New pattern.
+ * config/arm/arm.md: For splits which rely on conditional moves,
+ remove ! TARGET_IWMMXT condition.
+
+2003-10-13 David S. Miller <davem@redhat.com>
+
+ * ifcvt.c (num_removed_blocks): Rename to num_true_changes.
+ (find_cond_trap): Always increment if we emit a conditional
+ trap insn.
+
+2003-10-13 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in (BUILD_RTL): Replace $(BUILD_PREFIX)insn-modes.o
+ with min-insn-modes.o.
+ (STAGESTUFF): Add min-insn-modes.c.
+ (genobjs): Add genmodes.o.
+ (print-rtl.o, print-rtl1.o): Depend on $(TM_P_H).
+ (insn-modes.o): Depend on $(TM_H) not $(GTM_H); also real.h.
+ (min-insn-modes.c, min-insn-modes.o): New rules.
+ (s-modes): Also generate min-insn-modes.c.
+ ($(BUILD_PREFIX_1)insn-modes.o): Kill.
+ * genmodes.c (struct mode_data): Add format field.
+ (blank_mode, validate_mode, complete_mode): Update to match.
+ (make_scalar_mode): Separate into make_int_mode and make_float_mode.
+ (_SCALAR_MODE): Kill.
+ (FLOAT_MODE, FRACTIONAL_FLOAT_MODE): Add format argument.
+ (emit_insn_modes_c_header): Adjust.
+ (emit_min_insn_modes_c_header, emit_real_format_for_mode)
+ (emit_min_insn_modes_c): New functions.
+ (emit_insn_modes_c): Call emit_real_format_for_mode.
+ (main): Add -m option to generate min-insn-modes.c.
+ * machmode.h: Update documentation. Add format argument to
+ all uses of FLOAT_MODE.
+ * real.c: Don't define real_format_for_mode here.
+
+ * dwarfout.c: Move default definition of PRINT_REG...
+ * defaults.h: ...here.
+ * print-rtl.c: Include tm_p.h.
+ (DEBUG_PRINT_REG, DEBUG_REGISTER_NAMES, debug_reg_names, reg_names):
+ Kill.
+ (print_rtx): Use PRINT_REG, not DEBUG_PRINT_REG. But surround
+ this entire block with #ifndef GENERATOR_FILE.
+ * regclass.c: Unconditionally define reg_names.
+ * config/mips/mips.h, config/rs6000/rs6000.h, config/sh/sh.h
+ Don't define DEBUG_REGISTER_NAMES.
+ * config/rs6000/darwin.h: Don't use DEBUG_REGISTER_NAMES in
+ redefinition of REGISTER_NAMES.
+ * config/i386/i386.h: Don't define DEBUG_PRINT_REG.
+
+ * combine.c: Change all preprocessor conditionals on
+ EXTRA_CC_MODES to use SELECT_CC_MODE instead; rearrange a bit
+ for clarity.
+ * genopinit.c: Remove mention of EXTRA_CC_MODES in comment.
+ * configure.in: Don't define EXTRA_CC_MODES.
+ * configure, config.in: Regenerate.
+ * doc/tm.texi: Remove documentation of EXTRA_CC_MODES.
+
+ * config/arc/arc.c, config/m32r/m32r.c, config/sparc/sparc.c:
+ May assume that GET_MODE_CLASS is accurate for extra CC modes
+ at all times.
+
+ * config/i860/i860.h (INIT_CUMULATIVE_ARGS): Pass correct
+ number of arguments to aggregate_value_p.
+
+ * genmodes.c (RESET_FLOAT_FORMAT, reset_float_format): New.
+ * machmode.def: Explain ARCH-modes.def. Document
+ RESET_FLOAT_FORMAT. Improve commentary on various mode
+ clusters. Do not define OI, PQI, PHI, PSI, PDI, QF, HF, TQF,
+ XF, or TF modes here. Remove backward-compatibility
+ definition of CC.
+
+ * config/alpha/alpha-modes.def: New file; define TF mode.
+ * config/arc/arm-modes.def: Define XF mode.
+ * config/c4x/c4x-modes.def: Define QF and HF modes. Unset
+ float format for SF and DF modes.
+ * config/dsp16xx/dsp16xx-modes.def: New file; define HF mode.
+ * config/i386/i386-modes.def: Define XF and TF modes.
+ * config/i960/i960-modes.def: Define TF mode.
+ * config/ia64/ia64-modes.def: Define TF and OI modes.
+ * config/m68k/m68k-modes.def: New file; define XF mode.
+ * config/mips/mips-modes.def: New file; define TF mode, reset
+ formats for SF and DF modes.
+ * config/pa/pa-modes.def: Define TF mode.
+ * config/rs6000/rs6000.c: Define TF and PSI modes.
+ * config/s390/s390-modes.def: Define OI mode.
+ * config/sh/sh-modes.def: New file; define PSI mode.
+ * config/sparc/sparc-modes.def: Define TF mode.
+ * config/vax/vax-modes.def: New file; reset formats for SF and
+ DF modes.
+
+ * config/c4x/c4x.c (c4x_override_options): No need to mess
+ with real_format_for_mode or set REAL_MODE_FORMATs.
+ (c4x_immed_int_constant): Don't apply GET_MODE_CLASS to rtx
+ variable.
+ * config/i386/i386.c (override_options): No need to set
+ REAL_MODE_FORMATs here.
+ * config/i960/i960.c (i960_initialize): Likewise.
+ * config/m68k/m68k.c (m68k_override_options): Likewise.
+ * config/ia64/ia64.c (ia64_override_options): Set REAL_MODE_FORMAT
+ for TFmode only if not the default.
+ * config/mips/mips.c (override_options): Likewise.
+ * config/vax/vax.c (override_optionms): Set REAL_MODE_FORMAT for
+ DFmode only if not the default.
+
+ * config/i370/i370.h (RET_REG): Don't consider TFmode.
+ * config/m68hc11/m68hc11.c (print_operand): Don't consider XFmode.
+ * config/dsp16xx/dsp16xx.c (hard_regno_mode_ok): #if 0 out use
+ of modes that don't appear anywhere in the machine description.
+
+ * config/arc/arc-modes.def, config/arm/arm-modes.def
+ * config/c4x/c4x-modes.def, config/frv/frv-modes.def
+ * config/i386/i386-modes.def, config/i960/i960-modes.def
+ * config/ia64/ia64-modes.def, config/mmix/mmix-modes.def
+ * config/pa/pa-modes.def, config/pdp11/pdp11-modes.def
+ * config/rs6000/rs6000-modes.def, config/s390/s390-modes.def
+ * config/sparc/sparc-modes.def: Convert to new style for
+ declaring extra CC modes.
+
+2003-10-13 Zack Weinberg <zack@codesourcery.com>
+
+ * cpplex.c (_cpp_clean_line): In the common case of a line
+ with no trigraphs and no \-newline, avoid writing to memory.
+ (_cpp_skip_block_comment): Use a local 'cur' pointer instead
+ of the buffer member. Make c an uchar to avoid unnecessary
+ sign extensions.
+
+2003-10-13 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in: Remove unnecessary test.
+ * configure: Regenerate.
+
+ * configure.in: Fix grammatical error. Move UWIN host error to...
+ * config.host: Here.
+ * configure: Regenerate.
+
+2003-10-13 Andreas Krebbel <krebbel1@de.ibm.com>
+
+ * config/s390/s390.md ("*fmadddf4", "*fmsubdf4", "*fmaddsf4",
+ "*fmsubsf4"): Insns are now dependent on TARGET_FUSED_MADD instead
+ of flag_unsafe_math_optimizations.
+ * config/s390/s390.h ("MASK_NO_FUSED_MADD", "TARGET_NO_FUSED_MADD",
+ "TARGET_FUSED_MADD", "TARGET_SWITCHES"): Introduced new target flags
+ fused-madd and no-fused-madd.
+ * doc/invoke.texi: Documented the new options fused-madd and
+ no-fused-madd for S/390.
+
+2003-10-14 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/linux64.h (SUBSUBTARGET_OVERRIDE_OPTIONS): Choose
+ MASK_ALIGN_NATURAL if rs6000_alignment_string not given. Don't
+ assign DEFAULT_ABI.
+ (ADJUST_FIELD_ALIGN, ROUND_TYPE_ALIGN): Update comment.
+ * config/rs6000/rs6000.c: Formatting.
+ (rs6000_parse_alignment_option): Only set rs6000_alignment_flags
+ when rs6000_alignment_string given.
+
+2003-10-13 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR target/12538
+ * config/sparc/sparc.c (MUST_SAVE_REGISTER): Delete.
+ (sparc_flat_must_save_register_p): New function to decide whether
+ a register must be saved/restored in the function prologue/epilogue.
+ (sparc_flat_compute_frame_size): Use it instead of MUST_SAVE_REGISTER.
+
+2003-10-12 Steven Bosscher <steven@gcc.gnu.org>
+
+ * config/avr/avr.c, config/avr/avr-protos.h: Convert to
+ ISO C90 function declarations and definitions.
+ * config/sh/sh.c, config/sh/sh-protos.h: Likewise.
+
+2003-10-12 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (*-*-freebsd*): Use tm_defines instead of tiny
+ config files which do the same thing.
+ * config/freebsd3.h, config/freebsd4.h, config/freebsd5.h,
+ config/freebsd6.h: Remove now unnecessary files.
+
+2003-10-12 Steven Bosscher <steven@gcc.gnu.org>
+
+ * c-common.c (c_common_truthvalue_conversion): Warn if the
+ address of a non-weak function is used as a truth value.
+
+2003-10-12 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.c (WORD_REG_USED): Use SP_REG instead of
+ a literal.
+ * config/h8300/h8300.h (REGNO_OK_FOR_BASE_P): Use MAC_REG
+ instead of a literal.
+
+2003-10-12 Hans-Peter Nilsson <hp@bitrange.com>
+
+ * doc/extend.texi (Function Attributes): Mention the exceptional
+ path for noreturn-marked functions.
+
+2003-10-12 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (cgraph_decide_inlining): Fix uninitialized variable
+ warning.
+
+2003-10-12 Danny Smith <dannysmith@users.sourceforge.net>
+
+ * config/i386/i386.c (x86_this_parameter): Fix typo.
+
+2003-10-11 Jan Hubicka <jh@suse.cz>
+
+ * Makefile.in (web.o): New.
+ * web.c: New file.
+ * rtl.h (web_main): Declare.
+ * timervar.def (TV_WEB): New.
+ * toplev.c (dump_file_index, dump_file_info): Add DFI_web.
+ (rest_of_hanle_web): New.
+ (flag_web): New static variable.
+ (lang_independent_options): Add "web".
+ (rest_of_compilation): Call rest_of_handle_web.
+ * invoke.texi (-fweb): Document.
+ * common.opt (fweb): New.
+ * flags.h (flag_web): New.
+ * opts.c (decode_options): Set flag_web at -O3.
+
+ * passes.texi (web construction): Document.
+ * invoke.texi (-O3): Document that -fweb is enabled.
+
+ * regrename.c (regrename_optimize): Deal better with situation when
+ replacement failed.
+
+ * sched-ebb.c: Include params.h and profile.h
+ (schedule_ebbs): Use tracer parameters to discover superblocks
+ * Makefile.in (sched-ebb.o): Add dependencies.
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ * fold-const.c (negate_mathfn_p): New function to determine whether
+ a built-in mathematical function is sign preserving, f(-x) == -f(x).
+ Add support for BUILT_IN_ASIN, BUILT_IN_ASINF and BUILT_IN_ASINL.
+ (tree_swap_operands_p): Change API to take an additional argument
+ indicating that the swapped operands evaluate in reverse order.
+ Canonicalize VAR_DECLs and PARM_DECLs last if we can, i.e. neither
+ operand side-effects or we don't care about flag_evaluation_order.
+ (reorder_operands_p): New function to check whether its safe to
+ evaluate the given operands in reverse order.
+ (negate_expr_p): We can always negate integer constants unless
+ we honor -ftrapv and the signed type would overflow. Only allow
+ -(A-B) into B-A if reorder_operands_p says that its OK. Allow
+ negation of COMPLEX_CST if both real and imaginary parts can be
+ negated. Allow negation through floating point extensions and
+ sign-preserving built-in functions.
+ (negate_expr): Move the code to negate integers from "fold" to
+ here. Always negate integer constants unless we honor -ftrapv
+ and the signed type would overflow. Always negate real constants
+ unless we honor -ftrapping-math. Only convert -(A-B) into B-A
+ if allowed by reorder_operands_p. Add support for COMPLEX_CST.
+ Optimize negation through floating point extensions and
+ sign-preserving built-in functions (as defined by negate_mathfn_p).
+ (fold): Adjust calls to tree_swap_operands_p.
+ (fold <NEGATE_EXPR>): Move the remaining negation optimizations
+ to negate_expr_p/negate_expr.
+ (fold <MINUS_EXPR>): Use reorder_operands_p to check whether we're
+ allowed to convert (-A) - B into (-B) - A.
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_strcmp): Defend against the possibility
+ that gen_cmpstrsi may fail: Stabilize the argument list against
+ re-evaluation and expand the library call directly using this saved
+ argument list if a cmpstrsi sequence can't be generated.
+ (expand_builtin_strncmp): Likewise.
+
+ * config/i386/i386.md (cmpstrsi, movstrsi): Disable with -Os.
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ PR optimization/12260
+ * simplify-rtx.c (simplify_unary_operation): Simplify all unary
+ operations through CONST nodes. Optimize (neg (plus X C)) as
+ (minus -C X) for constant values C.
+ (simplify_binary_operation): Optimize (minus (neg X) C) as
+ (minus -C X) for constant values C.
+ (simplify_plus_minus): Avoid creating (neg (const (plus X C)),
+ instead create (minus -C X).
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ * expr.c (expand_expr <PLUS_EXPR>): Let expand_operands call
+ safe_from_p for us, once it chooses an evaluation order.
+ (expand_expr <MULT_EXPR>): Likewise.
+ (expand_expr <MIN_EXPR> <MAX_EXPR>): Likewise. If expand_operands
+ places the second operand in "target", swap the operands.
+ (do_store_flag): Let expand_operands call safe_from_p for us.
+
+2003-10-11 Eric Botcazou <ebotcazou@libertysurf.fr>
+
+ PR optimization/12544
+ * function.c (put_var_into_stack): Don't generate ADDRESSOFs
+ for DECL_NONLOCAL decls.
+
+2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * expr.c: Follow spelling conventions.
+ * final.c: Likewise.
+ * optabs.c: Likewise.
+ * sched-deps.c: Likewise.
+ * sdbout.c: Likewise.
+
+Sat Oct 11 12:24:23 CEST 2003 Jan Hubicka <jh@suse.cz>
+
+ * varasm.c (notice_global_symbol): Fix handling of variables; avoid
+ re-computing of variable.
+
+2003-10-11 Richard Henderson <rth@redhat.com>
+
+ * config/alpha/alpha.c (alpha_return_in_memory): Rename from
+ return_in_memory, make static, change signature to match target hook.
+ (alpha_setup_incoming_varargs): Make static, change signature to
+ match target hook, add code for vms and unicos.
+ (TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN,
+ TARGET_PROMOTE_PROTOTYPES, TARGET_STRUCT_VALUE_RTX,
+ TARGET_RETURN_IN_MEMORY, TARGET_SETUP_INCOMING_VARARGS,
+ TARGET_STRICT_ARGUMENT_NAMING,
+ TARGET_PRETEND_OUTGOING_VARARGS_NAMED): New.
+ * config/alpha/alpha-protos.h: Update.
+ * config/alpha/alpha.h (PROMOTE_FUNCTION_ARGS,
+ PROMOTE_FUNCTION_RETURN, RETURN_IN_MEMORY,
+ SETUP_INCOMING_VARARGS): Remove.
+ * config/alpha/unicosmk.h (SETUP_INCOMING_VARARGS): Remove.
+ * config/alpha/vms.h (SETUP_INCOMING_VARARGS): Remove.
+
+2003-10-11 Ian Lance Taylor <ian@wasabisystems.com>
+
+ * config/arm/arm.c (arm_regno_class): Handle IWMMXT_GR_REGS.
+
+2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m68k/lb1sf68.asm: Follow spelling conventions.
+ * config/m68k/m68k.c: Likewise.
+ * config/m68k/m68k.h: Likewise.
+ * config/m68k/m68k.md: Likewise.
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (expand_builtin_memcpy): Optimize case when the two
+ pointer arguments are the equal, non-volatile and side-effect free.
+ (expand_builtin_mempcpy): Likewise.
+ (expand_builtin_memmove): Likewise.
+ (expand_builtin_strcpy): Likewise.
+ (expand_builtin_memcmp): Likewise.
+ (expand_builtin_strcmp): Likewise.
+ (expand_builtin_strncmp): Likewise.
+
+2003-10-11 Roger Sayle <roger@eyesopen.com>
+
+ * combine.c (apply_distributive_law): Enable "distributive" floating
+ point optimizations with -funsafe-math-optimizations.
+
+2003-10-11 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * genmodes.c (emit_mode_mask) Change MASK to MODE_MASK.
+
+2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m68k/m68k-protos.h: Remove the prototype for
+ finalize_pic.
+
+2003-10-11 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/m68k/m68k.c: Fix comment typos.
+
+2003-10-11 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k-protos.h (use_return_insn): Change return type from
+ int to bool.
+ * config/m68k/m68k.c (struct m68k_frame): Add funcdef_no member.
+ (current_frame): New global var.
+ (m68k_compute_frame_layout): Cache computations in current_frame.
+ (m68k_initial_elimination_offset): Use values from current_frame
+ instead of recomputing them.
+ (use_return_insn): Likewise.
+ (m68k_output_function_prologue): Likewise.
+ (m68k_output_function_epilogue): Likewise.
+ * config/m68k/m68k.h (TARGET_CPU_CPP_PREDEFINES): Fold __PIC__ handling
+ inside the block for __pic__.
+
+2003-10-11 Peter Barada <peter@baradas.org>
+ Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/m68k.c (m68k_frame): Move before protos referencing it.
+ (m68k_save_reg): Add boolean parameter `interrupt_handler'.
+ (m68k_interrupt_function_p): New function.
+ (m68k_handle_fndecl_attribute): Ditto.
+ (m68k_compute_frame_layout): Ditto.
+ (m68k_attribute_table): Define back-end specific attributes.
+ (m68k_output_function_epilogue): Emit RTE instruction for interrupt
+ functions.
+
+2003-10-11 Bernardo Innocenti <bernie@develer.com>
+
+ * config/m68k/t-uclinux: New target Makefile fragment.
+ * config/m68k/uclinux.h: New target macro file.
+ * config.gcc (m68k-*-uclinux): New target definition.
+
+2003-10-10 Roger Sayle <roger@eyesopen.com>
+
+ * builtins.c (builtin_mathfn_code): Generalize to check whether
+ the call is to any built-in function by comparing the call's
+ argument list against the builtin decl's function type.
+
+2003-10-10 Roger Sayle <roger@eyesopen.com>
+
+ * cse.c (constant_pool_entries_regcost): New global variable to
+ hold the register cost component of constant_pool_entries_cost.
+ (fold_rtx): Calculate constant_pool_entries_regcost at the same
+ time as constant_pool_entries_cost.
+ (cse_insn): Set both src_folded_cost and src_folded_regcost from
+ constant_pool_entries_cost and constant_pool_entries_regcost.
+ (cse_main): Initialize constant_pool_entries_regcost to zero.
+
+ * optabs.c (expand_unop): Attach a REG_EQUAL note describing
+ the semantics of the sequence of bit operations used to negate
+ a floating-point value.
+ (expand_abs_nojump): Likewise attach a REG_EQUAL note describing
+ the semantics of the bit operations used to abs a floating point
+ value.
+
+2003-10-11 Bernardo Innocenti <bernie@develer.com>
+ Paul Dale <pauli@snapgear.com>
+
+ * config/m68k/lb1sf68.asm: Add __PIC__ and __ID_SHARED_LIBRARY__
+ support.
+ * config/m68k/m68k-none.h (ASM_SPEC): Pass --pcrel to assembler on
+ -fpic, -fPIC, -msep-data and -mid-shared-library.
+ * config/m68k/m68k.c (m68k_library_id_string): New global variable.
+ (override_options): Add -msep-data and -mshared-library-id support.
+ (m68k_output_function_prologue): Generate code to load A5 for
+ TARGET_ID_SHARED_LIBRARY and TARGET_SEP_DATA.
+ (m68k_output_mi_thunk): Emit indirect jump on TARGET_ID_SHARED_LIBRARY.
+ (m68k_output_pic_call): New function.
+ * gcc/config/m68k/m68k.h (TARGET_SEP_DATA): New target flag.
+ (TARGET_ID_SHARED_LIBRARY): Ditto.
+ (TARGET_SWITCHES): Add switches for -mid-shared-library and -msep-data.
+ * gcc/config/m68k/m68k.md (call): Call m68k_output_pic_call().
+ (call_value): Likewise.
+
+2003-10-10 Zack Weinberg <zack@codesourcery.com>
+
+ * gengenrtl.c (find_formats, genheader): Make i an unsigned
+ int, remove cast of NUM_RTX_CODE.
+ * machmode.h: Make the HAVE_MACHINE_MODES #ifdef encompass the
+ entire file. Remove the #ifs on GET_MODE_MASK etc and
+ GET_MODE_WIDER_MODE etc.
+
+2003-10-10 Eric Christopher <echristo@redhat.com>
+
+ * lcm.c (optimize_mode_switching): Change NORMAL_MODE
+ to MODE_ENTRY and MODE_EXIT. Add MODE_AFTER for insns
+ that set mode.
+ * config/sh/sh.h (MODE_ENTRY): New macro.
+ (MODE_EXIT): Ditto.
+ (MODE_AFTER): Ditto.
+ * config/sh/sh.md: Change for MODE_AFTER. Add
+ fp_set attribute.
+ * doc/tm.texi: Document MODE_AFTER, MODE_ENTRY, and MODE_EXIT.
+
+2003-10-10 Zack Weinberg <zack@codesourcery.com>
+
+ * genmodes.c, mode-classes.def: New files.
+ * machmode.def: Rewritten to genmodes.c interface.
+ * Makefile.in (extra_modes_file): New substitution variable.
+ (MACHMODE_H): No longer includes machmode.def or
+ @extra_modes_file@; instead, mode-classes.def and insn-modes.h.
+ (BUILD_RTL): Add $(BUILD_PREFIX)insn-modes.o.
+ (OBJS-common): Add insn-modes.o.
+ (STAGESTUFF): Add insn-modes.c, insn-modes.h, s-modes, and
+ genmodes$(build_exeext).
+ (insn-modes.o, insn-modes.c, insn-modes.h, s-modes, genmodes.o,
+ genmodes$(build_exeext), $(BUILD_PREFIX_1)insn-modes.o): New targets.
+ (s-genrtl): Don't depend on $(RTL_BASE_H).
+ (gengenrtl.o): Don't depend on coretypes.h, $(GTM_H), real.h,
+ or $(RTL_BASE_H); just rtl.def.
+ * gengenrtl.c: Don't include coretypes.h, tm.h, rtl.h, or
+ real.h. Give fake definition of CONST_DOUBLE_FORMAT and
+ substitute definition of NUM_RTX_CODE. Add casts to avoid
+ warnings.
+ * machmode.h: Include insn-modes.h, not machmode.def. Include
+ mode-classes.def to define enum mode_class. Tweak definitions
+ of GET_MODE_CLASS, GET_MODE_SIZE, GET_MODE_BITSIZE, GET_MODE_MASK,
+ GET_MODE_INNER, GET_MODE_WIDER_MODE, GET_CLASS_NARROWEST_MODE.
+ (inner_mode_array): Renamed mode_inner.
+ (mode_base_align): New.
+ * rtl.c (mode_name, mode_class, mode_bitsize, mode_size,
+ mode_unit_size, mode_wider_mode, mode_mask_array,
+ inner_mode_array, class_narrowest_mode): Delete definitions.
+ * stor-layout.c (get_mode_alignment): Use mode_base_align.
+ * real.h: Use MIN_MODE_FLOAT and MAX_MODE_FLOAT, not QFmode
+ and TFmode, in real_format_for_mode and REAL_MODE_FORMAT.
+
+ * config/ip2k/ip2k.h, config/iq2000/iq2000.h:
+ No need to define BITS_PER_UNIT.
+
+2003-10-10 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
+
+ * config/ia64/ia64.c (ia64_vms_init_libfuncs): New function.
+ (ia64_output_function_prologue): Only write .prologue if --with-gnu-as.
+ (ia64_initialize_trampoline): If not using GAS, declare trampoline
+ as global.
+ * config/ia64/ia64.h (ASM_APP_ON, ASM_APP_OFF): Add vers for not GAS.
+ (ASM_OUTPUT_DEBUG_LABEL): Likewise.
+
+ * stor-layout.c (compute_record_mode): Don't force BLKmode if
+ field is zero-length BLKmode.
+ * expr.c (expand_expr, case COMPONENT_REF): Handle case of BLKmode
+ zero-size references.
+
+ * combine.c (distribute_links): Properly test for REG being set.
+
+ * config/alpha/alpha.c (alpha_expand_block_mode): Don't use
+ gen_lowpart and company except for REG.
+
+2003-10-10 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * pa64-hpux.h (LINK_SPEC): Use `-z' option with HP ld.
+
+2003-10-10 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc (mips*-*-netbsd*): Remove content-free line.
+
+2003-10-10 Herman A.J. ten Brugge <hermantenbrugge@home.nl>
+
+ * gcov-io.h: Check BITS_PER_UNIT when defining gcov_unsigned_t,
+ gcov_position_t and gcov_type.
+
+2003-10-09 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * configure.in (HAVE_AS_TLS): Add sh-*-* and sh[34]*-*-* cases.
+ * configure: Regenerate.
+
+2003-10-09 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (define_asm_attributes): Specify
+ the length of an asm insn more precisely.
+
+2003-10-09 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * config/mips/iris6.h (SUBTARGET_CPP_SPEC): Define.
+
+2003-10-09 Bob Wilson <bob.wilson@acm.org>
+
+ * config/xtensa/xtensa.c (xtensa_dbx_register_number): Change first
+ FP register number to 48 and MAC16 accumulator to 0x210.
+
+2003-10-09 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * config.gcc: Remove redundant thread_file setting clauses for
+ various *-*-linux* targets.
+
+2003-10-09 Kazu Hirata <kazu@cs.umass.edu>
+
+ * config/h8300/h8300.md (define_asm_attributes): New.
+
+2003-10-09 Roger Sayle <roger@eyesopen.com>
+
+ * optabs.c (prepare_float_lib_cmp): Always attach a REG_EQUAL note
+ to the comparison, as emit_libcall_block calls copy_rtx on equiv.
+
+2003-10-09 Dorit Naishlos <dorit@il.ibm.com>
+
+ * haifa-sched.c (ok_for_early_schedule): New function.
+ (early_queue_to_ready): New function.
+ (schedule_block): Allow early removal of insns from Q.
+ (schedule_insn): Update INSN_TICK in case of premature
+ issue.
+ * common.opt (sched_stalled_insns): New flag.
+ (sched_stalled_insns_dep): New flag.
+ * flags.h: Same above flags.
+ * opts.c: Same as above.
+ * toplev.c: Same as above.
+ * target.h (targetm.sched.is_costly_dependence): New
+ hook.
+ * target-def.h: Same as above.
+ * config/rs6000/rs6000.h: (rs6000_sched_costly_dep):
+ Support new flag -msched-costly-dep.
+ (DEFAULT_SCHED_COSTLY_DEP): Define.
+ * config/rs6000/rs6000.c:
+ (rs6000_is_costly_dependence): New function.
+ (is_load_insn, is_store_insn): New functions.
+ (is_load_insn1, is_store_insn1, is_mem_ref): New
+ functions.
+ * doc/invoke.texi (-fsched-stalled-insns-dep)
+ (-fsched-stalled-insns, -msched-costly-dep): Document
+ options.
+ * doc/tm.texi (is_costly_dependence): Define new
+ scheduler target hook.
+
+2003-10-09 Jason Merrill <jason@redhat.com>
+
+ PR c++/6392
+ * c-common.c (c_build_qualified_type): Look through arrays first.
+ (c_apply_type_quals_to_decl): Look through arrays.
+
+ * c-common.c (c_apply_type_quals_to_decl): Unset TREE_READONLY for
+ types with constructors.
+
+ * coverage.c (build_ctr_info_value): Use build_decl to make a
+ VAR_DECL.
+ (create_coverage): Likewise.
+
+ * stmt.c (resolve_asm_operand_names): Call check_unique_operand_names
+ here.
+ (expand_asm_operands): Not here.
+ (parse_input_constraint): No longer static.
+ * tree.h: Declare it.
+
+2003-10-08 Kaz Kojima <kkojima@gcc.gnu.org>
+
+ * config/sh/t-linux (SHLIB_LINK): Override to use a linker script
+ libgcc_s.so.
+ (SHLIB_INSTALL): Likewise.
+
2003-10-08 Nathanael Nerode <neroden@gcc.gnu.org>
* doc/install.texi: Remove reference to removed 'pthreads' thread
which loads the SYMBOL_REF address.
2003-10-08 Timo Kokkonen <tjko@iki.fi>
- Eric Botcazou <ebotcazou@libertysurf.fr>
+ Eric Botcazou <ebotcazou@libertysurf.fr>
PR bootstrap/12490
* scan-decls.c (MAX_EXTERN_C_BRACES): New preprocessor constant
switch statement to pick the correct REAL_VALUE_TO_TARGET_*
macro.
-Mon Sep 29 22:59:05 CEST 2003 Jan Hubicka <jh@suse.cz>
+2003-09-29 Jan Hubicka <jh@suse.cz>
PR c++/12175
* varasm.c (notice_global_symbol): Discard external symbols.
* fold-const.c (fold): Fold (A & ~B) - (A & B) into
(A ^ B) - B, where B is any power of 2 minus 1.
-Mon Sep 29 19:05:46 CEST 2003 Jan Hubicka <jh@suse.cz>
+2003-09-29 Jan Hubicka <jh@suse.cz>
* libgcov.c (gcov_exit): Fix two pastos.