OSDN Git Service

* emit-rtl.c (get_mem_attrs): Adjust alignment tests determining
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index a93582d..6dba145 100644 (file)
@@ -1,3 +1,361 @@
+Fri Apr  4 17:43:52 2003  Olivier Hainque <hainque@act-europe.fr>
+
+        * emit-rtl.c (get_mem_attrs): Adjust alignment tests determining
+        use of default attributes to agree MEM_ALIGN macro.
+
+Fri Apr  4 17:33:24 2003  Joel Brobecker  <brobecker@gnat.com>
+
+        * dbxout.c (dbxout_type): When printing type index of range type
+       whose bounds are printed in octal format, print type of parent type if
+       it exists so enumerated type descriptions are not transformed
+        into unsigned types.
+
+2003-04-04  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300-protos.h: Add a prototype for
+       compute_a_shift_cc.
+       * config/h8300/h8300.c (shift_one): Update the CC status.
+       (shift_two): Likewise.
+       (output_a_shift_cc): Set cc_inline and cc_special.
+       (compute_a_shift_cc): New.
+       * config/h8300/h8300.md (shift insns): Use compute_a_shift_cc.
+
+2003-04-04  Richard Henderson  <rth@redhat.com>
+
+       * cse.c (fold_rtx): Fix 03-30 change; do check insn non-null.
+
+2003-04-04  Loren James Rittle  <ljrittle@acm.org>
+
+       * fixinc/inclhack.def (bsd_stdio_attrs_conflict): New.
+       * fixinc/fixincl.x: Rebuilt.
+       * fixinc/tests/base/stdio.h: Regenerated.
+
+2003-04-04  Nathan Sidwell  <nathan@codesourcery.com>
+
+       * gcov.c (accumulate_line_counts): Fix span tree merge bug.
+
+Fri Apr  4 15:58:52 2003  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * sh.h (ACTUAL_NORMAL_MODE): New macro, broken out of
+       (NORMAL_MODE).
+       * sh.c (fpscr_set_from_mem): Use ACTUAL_NORMAL_MODE.
+
+2003-04-04  Gerald Pfeifer  <pfeifer@dbai.tuwien.ac.at>
+       
+       * doc/contrib.texi (Contributors): Add entries for Wolfgang
+       Bangerth, DJ Delorie, Christian Ehrhardt, Christopher Faylor,
+       Nathanael Nerode, Diego Novillo, Hartmut Penner, Volker Reichelt,
+       Danny Smith, and Ulrich Weigand.
+       Update Kriang Lerdsuwanakij and fix a typo in Janis Johnson's
+       entry.
+
+2003-04-04  Nick Clifton  <nickc@redhat.com>
+
+       * config/sparc/sol2-bi.h: Revert previous delta.
+       * config/sparc/sol2-gas-bi.h (AS_SPARC64_FLAG): Prepend -TSO
+
+2003-04-04  Nick Clifton  <nickc@redhat.com>
+
+       * config/v850/v850.c (expand_prologue): Only use register save
+       helper functions if long calls are not being used.
+       Add a clobber of r11 id using long calls.
+       (pattern_is_ok_for_prologue): Account for the extra clobber.
+       (construct_save_jarl): Likewise.
+       * config/v850/v850.md (prolog pattern): Do not use this pattern
+       for v850e's.
+
+2003-04-04  Andreas Schwab  <schwab@suse.de>
+
+       * stor-layout.c (layout_decl): Avoid syntax error in last change
+       when PCC_BITFIELD_TYPE_MATTERS is defined but not
+       EMPTY_FIELD_BOUNDARY.
+
+2003-04-03  Jason Merrill  <jason@redhat.com>
+
+       PR c/10175
+       * jump.c (never_reached_warning): Revert patch of 2002-11-02.
+       Look backwards for a line note.
+
+2003-04-03  Neil Booth  <neil@daikokuya.co.uk>
+
+       * fix-header.c (read_scan_file): Defer switch processing.
+
+2003-04-03  Matt Austern  <austern@apple.com>
+
+       * cpppch.c (reset_ht): Remove.
+       (cpp_read_state): Remove loop to reset hashtable identifiers.
+       * ggc-common.c (gt_pch_save): Add call to gt_pch_fixup_stringpool
+       after pch file is written.
+       * ggc.h (gt_pch_fixup_stringpool): Declare.
+       * stringpool.c (ht_copy_and_clear): Define.  Callback.  Copy
+       hashnode's value to another hashtable, then clear the original.
+       (saved_ident_hash): Define.
+       (gt_pch_save_stringpool): Create saved_ident_hash, use it to
+       store definitions in ident_hash, and clear ident_hash.
+       (gt_pch_fixup_stringpool): Define.  Restore definitions from
+       saved_ident_hash to ident_hash, then destroy saved_ident_hash.
+
+Thu Apr  3 22:27:40 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * cfgrtl.c (update_bb_for_insn): Do not set block for barriers.
+
+2003-04-03  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       PR optimization/10157
+       * gcse.c (can_copy_p): Rename it to can_copy.
+       (can_copy_init_p): Remove.
+       (compute_can_copy): Use can_copy instead of can_copy_p.
+       (can_copy_p): New exported function. Call compute_can_copy.
+       (hash_scan_set): Use it.
+       (gcse_main): Don't call compute_can_copy.
+       (bypass_jumps): Don't call compute_can_copy.
+       * rtl.h (can_copy_p): Declare.
+       * loop.c (scan_loop): Don't move the source and add a reg-to-reg
+       copy if the mode doesn't support copy operations.
+
+2003-04-03  Jason Merrill  <jason@redhat.com>
+
+       * Makefile.in (unstrap): Also remove stage_last.
+
+       * dwarf2out.c (lookup_filename): Don't check for "<internal>".
+       (dwarf2out_source_line): Don't do anything if line==0.
+
+       * stor-layout.c (do_type_align): New fn, split out from...
+       (layout_decl): ...here.  Do all alignment calculations for 
+       FIELD_DECLs here.
+       (update_alignment_for_field): Not here.
+       (start_record_layout, debug_rli): Remove unpadded_align.
+       * tree.h (struct record_layout_info_s): Remove unpadded_align.
+       * c-decl.c (finish_enum): Don't set DECL_SIZE, DECL_ALIGN
+       or DECL_MODE on the CONST_DECLs.
+       (finish_struct): Don't mess with DECL_ALIGN.
+
+Thu Apr  3 18:57:19 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (print_operand): Do not bypass output_addr_const at flag_pic.
+
+Thu Apr  3 17:08:09 2003  J"orn Rennecke <joern.rennecke@superh.com>
+
+       * sh.c (sh_function_ok_for_sibcall): Return 0 if the current
+       function is an interrupt handler.
+
+       * sh.c (sh_expand_epilogue): Avoid clash of temp register for
+       restoring target registers with EH_RETURN_STACKADJ_RTX; use
+       multiple registers in round-robin fashion.
+
+2003-04-03  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
+
+       * gengtype-lex.l (IWORD): Add CHAR_BITFIELD.
+       * system.h (CHAR_BITFIELD): New.
+
+2003-04-03  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.md (a peephole2): Generalize to accept GT
+       and LE.
+       (another peephole2): Likewise.
+
+2003-04-03  Nick Clifton  <nickc@redhat.com>
+
+       * config/sparc/sol2-bi.h (ASM_CPU64_DEFAULT_SPEC): Add -TSO.
+        (DEF_ARCH64_SPEC): Likewise.
+
+Thu Apr  3 09:53:40 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (constant_address_p): Use legitimate_constant_p.
+       (legitimate_address_p): Do not use CONSTANT_ADDRESS_P.
+
+2003-04-02  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300-protos.h: Add a prototype for
+       gtle_operator.
+       * config/h8300/h8300.c (gtle_operator): New.
+       * config/h8300/h8300.h (PREDICATE_CODES): Add an entry for
+       gtle_operator.
+       * config/h8300/h8300.md (a peephole2): Generalize to accept GT
+       and LE.
+
+2003-04-02  Richard Henderson  <rth@redhat.com>
+
+       * libgcc-std.ver (_Unwind_GetCFA): New.
+       * unwind-dw2.c (_Unwind_GetCFA): New.
+       * unwind-libunwind.c (_Unwind_GetCFA): New.
+       * unwind-sjlj.c (_Unwind_GetCFA): New.
+       * unwind.h: Declare it.
+
+Thu Apr  3 00:31:21 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       PR inline-asm/8088
+       * i386.c (ix86_hard_regno_mode_ok):  Return 0 for MMX/SSE registers
+       when MMX/SSE is not available.
+
+2003-04-02  Mike Stump  <mrs@apple.com>
+
+       * doc/install.texi (Specific): Update pointers to apple.com.
+
+Thu Apr  3 00:18:49 CEST 2003  Jan Hubicka  <jh@suse.cz>
+
+       * i386.c (override_options):  Disable red zone by default on i386.
+       (compute_frame_layout, ix86_force_to_memory, ix86_free_from_memory):  
+       Do not test TARGET_64BIT together with TARGET_RED_ZONE
+
+2003-04-02  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.md (a peephole2): Tighten the condition.
+
+2003-04-02  Richard Henderson  <rth@redhat.com>
+
+       * longlong.h (umul_ppmm) [alpha]: Use __builtin_alpha_umulh.
+
+2003-04-02  Kazu Hirata  <kazu@cs.umass.edu>
+
+       * config/h8300/h8300.md (a peephole2): New.
+
+2003-04-02  Richard Henderson  <rth@redhat.com>
+
+       * except.c (sjlj_find_directly_reachable_regions): Recognize when
+       must-not-throw region has been deleted.
+
+2003-04-02  Richard Henderson  <rth@redhat.com>
+
+        * dwarf2out.c (output_call_frame_info): Ignore fde->nothrow as an
+        optimization when flag_exceptions not enabled.
+
+2003-04-02  Vladimir Makarov  <vmakarov@redhat.com>
+
+       * config/rs6000/rs6000.c
+       (TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Redefine the
+       macros.
+       (rs6000_issue_rate): Add case for 8540.
+       (rs6000_use_sched_lookahead): New function.
+
+       * config/rs6000/8540.md: Rename SIU units into SU ones and MIU
+       units into MU ones.
+       (ppc8540_branch, ppc8540_cr_logical): Add one cycle in the
+       reservation before retirement.
+       (ppc8540_multiply, ppc8540_load, ppc8540_store,
+       ppc8540_simple_float, ppc8540_vector_load, ppc8540_vector_store):
+       Remove additional cycle in the reservation before retirement.
+       (ppc8540_mfcr, ppc8540_mtcrf, ppc8540_mtjmpr): Add missed
+       reservation of ppc8540_issue.
+       
+2003-04-02  Andreas Schwab  <schwab@suse.de>
+
+       * real.c (decode_ieee_single): Fix decoding of SNaN bit.
+
+2003-04-01  Richard Henderson  <rth@redhat.com>
+
+        * except.c (convert_from_eh_region_ranges_1): Smash REG_EH_REGION
+        notes for nothrow calls if flag_forced_unwind_exceptions.
+        (build_post_landing_pads): Mind flag_forced_unwind_exceptions.
+        (sjlj_find_directly_reachable_regions): Likewise.
+        (reachable_handlers): Likewise.
+        (can_throw_external): Likewise.
+        (collect_one_action_chain): Record cleanups after catch-all and
+        must-not-throw if flag_forced_unwind_exceptions.
+        * flags.h (flag_forced_unwind_exceptions): Declare.
+        * toplev.c (flag_forced_unwind_exceptions): New.
+        (lang_independent_options): Add it.
+       * doc/invoke.text: Add it.
+
+2003-04-01  David Mosberger <davidm@hpl.hp.com>
+
+        * config/ia64/crti.asm: Clean up trailing whitespace.
+        Remove trailing hashes (#) from identifiers.
+
+        * config/ia64/crtn.asm: Ditto.
+
+        * config/ia64/crtend.asm: Remove trailing hashes (#) from
+        identifiers.
+        (__do_global_ctors_aux): Align to 32-byte boundary.  Add unwind
+        directives.  Drop explicit bundling---it just makes the code
+        harder to read.  Don't save/restore gp needlessly.
+
+        * config/ia64/crtbegin.asm: Remove trailing hashes (#) from
+        identifiers (they're only needed if the identifier would clash
+        with a register name otherwise).
+        (__do_global_dtors_aux): Align to 32-byte boundary. Add unwind
+        directives.  Drop explicit bundling---it just makes the code
+        harder to read.
+        (__do_jv_register_classes): Ditto.
+        (.fini_array): Remove "progbits" (newer
+        assemblers don't like wrong section-types).
+        (.init_array): Ditto.
+
+2003-04-01  Roger Sayle  <roger@eyesopen.com>
+
+       PR fortran/9974
+       * gcse.c (reg_killed_on_egde): New function to test whether the
+       given reg is overwritten by any instruction queued on an edge.
+       (bypass_block): Ignore substitutions killed on incoming edges.
+       Don't bypass outgoing edges that have queued instructions.
+
+2003-04-01  Alexandre Oliva  <aoliva@redhat.com>
+
+       * real.h (EXP_BITS): Make room for...
+       (struct real_value): ... added canonical bit.
+       (struct real_format): Added pnan.
+       (mips_single_format, mips_double_format, mips_extended_format,
+       mips_quad_format): New.
+       * real.c: Copy p to pnan in all formats.
+       (get_canonical_qnan, get_canonical_snan): Set canonical bit.
+       (real_nan): Use pnan to compute significand's shift.
+       (real_identical): Disregard significand in canonical
+       NaNs.
+       (real_hash): Likewise.  Take signalling into account.
+       (encode_ieee_single, encode_ieee_double, encode_ieee_quad):
+       Disregard significand bits in canonical NaNs.  Set all bits of
+       canonical NaN if !qnan_msb_set.
+       (encode_ibm_extended, decode_ibm_extended): Likewise.  Use
+       qnan_msb_set to tell the base double format.
+       (ibm_extended_format): Use 53 as pnan.
+       (mips_single_format, mips_double_format, mips_extended_format,
+       mips_quad_format): Copied from the corresponding ieee/ibm
+       formats, with qnan_msb_set false.
+       * config/mips/iris6.h (MIPS_TFMODE_FORMAT): Use mips_extended_format.
+       * config/mips/linux64.h (MIPS_TFMODE_FORMAT): Use mips_quad_format.
+       * config/mips/mips.c (override_options): Use mips_single_format
+       and mips_double_format.  Default TFmode to mips_quad_format.
+       * config/mips/t-linux64 (tp-bit.c): Define QUIET_NAN_NEGATED.
+       * config/mips/t-irix6: Likewise.
+       * config/mips/t-mips (fp-bit.c, dp-bit.c): Likewise.
+       * config/fp-bit.c (pack_d, unpack_d): Obey it.
+
+2003-04-01  Geoffrey Keating  <geoffk@apple.com>
+
+       * unwind-dw2-fde-darwin.c (DESTRUCTOR_MAY_BE_CALLED_LIVE): New.
+       (live_image_destructor): Reset image to initial state.
+       (examine_objects): Set DESTRUCTOR_MAY_BE_CALLED_LIVE.
+
+2003-04-01  Eric Botcazou  <ebotcazou@libertysurf.fr>
+
+       * config/sparc/sparc.c (input_operand): Accept bare
+       CONSTANT_P_RTX operands.
+
+2003-04-01  Zdenek Dvorak  <rakdver@atrey.karlin.mff.cuni.cz>
+
+       * gcse.c (struct ls_expr): Added pattern_regs field.
+       (ldst_entry): Initialize it.
+       (extract_mentioned_regs, extract_mentioned_regs_helper): New.
+       (store_ops_ok): Use regs precomputed by them.
+       (find_loads, store_killed_in_insn, load_kills_store): Change return
+       type to bool.
+       (store_killed_before, store_killed_after): Take position of register
+       set in account.
+       (reg_set_info): Store position of the setter.
+       (gcse_main): Enable store motion.
+       (mems_conflict_for_gcse_p): Enable load motion of non-symbol mems.
+       (pre_insert_copy_insn, update_ld_motion_stores, insert_store): Prevent rtl
+       sharing.
+       (simple_mem): Enable store motion of non-symbol mems.
+       (regvec): Type changed.
+       (LAST_AVAIL_CHECK_FAILURE): New.
+       (compute_store_table_current_insn): New.
+       (build_store_vectors): Computation of availability and anticipatability
+       moved ...
+       (compute_store_table, find_moveable_store): ... here.
+       (delete_store): Remove senseless comment.
+       (store_motion): Reorganize.
+
 2003-04-01  Kevin Buettner  <kevinb@redhat.com>
 
        * config/mips/mips.c (override_options): Provide mappings for