OSDN Git Service

2005-06-01 Paul Thomas <pault@gcc.gnu.org>
[pf3gnuchains/gcc-fork.git] / gcc / ChangeLog
index ab0bf7a..45feeac 100644 (file)
@@ -1,3 +1,107 @@
+2005-06-01  Jan Hubicka  <jh@suse.cz>
+
+       * except.c (struct eh_region): Kill unused fields.
+       * basic-block.h (struct basic_block_def): Likewise.
+
+2005-06-01  J"orn Rennecke <joern.rennecke@st.com>
+
+       PR rtl-optimization/21767
+       * rtl.h (function_invariant_p): Re-add declaration.
+       * reload1.c (function_invariant_p): No longer static.
+       * ifcvt.c (dead_or_predicable): Remove REG_EQUAL notes that
+       might have become invalid.
+
+2005-06-01  Jakub Jelinek  <jakub@redhat.com>
+
+       PR c/21536
+       PR c/20760
+       * gimplify.c (gimplify_decl_expr): Call gimplify_type_sizes
+       on variable sizes types if a decl is a pointer to a VLA.
+       (gimplify_type_sizes): Handle POINTER_TYPE and REFERENCE_TYPE.
+       Call gimplify_type_sizes on aggregate fields.  Prevent infinite
+       recursion.
+
+       * fold-const.c (fold_ternary): Optimize BIT_FIELD_REF of VECTOR_CST.
+
+       * config/i386/xmmintrin.h (_mm_setzero_ps, _mm_set_ss, _mm_set1_ps,
+       _mm_set_ps, _mm_setr_ps): Add __extension__.
+       * config/i386/emmintrin.h (_mm_set_sd, _mm_set1_pd, _mm_set_pd,
+       _mm_setr_pd, _mm_setzero_pd, _mm_set_epi64x, _mm_set_epi64x,
+       _mm_set_epi32, _mm_set_epi16, _mm_set_epi8, _mm_setzero_si128):
+       Likewise.
+       (_mm_clflush): Don't use return in void function.
+
+       * config/i386/emmintrin.h (_mm_castpd_ps, _mm_castpd_si128,
+       _mm_castps_pd, _mm_castps_si128, _mm_castsi128_ps, _mm_castsi128_pd):
+       Use __inline instead of inline.
+
+2005-06-01  Richard Guenther  <rguenth@gcc.gnu.org>
+
+       * fold-const.c (fold_binary): Fix types in strlen vs.
+       zero comparison folding.
+
+2005-06-01  Richard Henderson  <rth@redhat.com>
+
+       * configure.ac (HAVE_AS_JSRDIRECT_RELOCS): New.
+       * config.in, configure: Rebuild.
+       * config/alpha/alpha.c (print_operand): Add 'j'.
+       * alpha.md (divmodsi_internal_er_1): Use it.
+       (divmoddi_internal_er_1): Likewise.
+
+2005-06-01  Richard Sandiford  <rsandifo@redhat.com>
+
+       * system.h (TARGET_OPTIONS, TARGET_SWITCHES): Poison.
+       * opts.h (print_filtered_help): Delete.
+       * opts.c (handle_option, decode_options): Remove calls to
+       set_target_switch.
+       (print_target_help): New function.
+       (common_option, print_help): Call print_target_help instead of
+       display_target_options.
+       (print_filtered_help): Make static.
+       * toplev.h (display_target_options, set_target_switch): Delete.
+       * toplev.c (target_switches, target_options, display_target_options)
+       (set_target_switch): Delete.
+       (print_switch_values): Remove handling of TARGET_SWITCHES and
+       TARGET_OPTIONS.
+       (default_get_pch_validity): Likewise.  Only treat target_flags
+       specially if targetm.check_pch_target_flags is nonnull.
+       (pch_option_mismatch): New function.
+       (default_pch_valid_p): Use it.  Remove handling of TARGET_SWITCHES
+       and TARGET_OPTIONS.  Only treat target_flags specially if
+       targetm.check_pch_target_flags is nonnull.
+       * config/ia64/ia64.c (ia64_override_options): Don't mention
+       TARGET_OPTIONS in comment.
+       * config/m68k/m68k-none.h (CC1_SPEC): Likewise.
+       * doc/invoke.texi: Remove a reference to TARGET_SWITCHES.
+       * doc/tm.texi (TARGET_DEFAULT_TARGET_FLAGS): Don't mention the
+       interaction with TARGET_SWITCHES.
+       (TARGET_@var{featurename}, TARGET_SWITCHES, TARGET_OPTIONS): Delete.
+
+2005-06-01  Richard Sandiford  <rsandifo@redhat.com>
+
+       * config/sh/sh.c (multcosts): Check sh_multcost rather than
+       sh_multcost_str.
+       (sh_register_move_cost): Likewise sh_gettrcost and sh_gettrcost_str.
+       (sh_multcost_str, sh_gettrcost_str, sh_div_str, sh_divsi3_libfunc)
+       (cut2_workaround_str): Delete.
+       * config/sh/sh.h (SUBTARGET_OPTIONS, TARGET_OPTIONS)
+       (TARGET_SH5_CUT2_WORKAROUND, sh_multcost_str, sh_gettrcost_str)
+       (sh_div_str, sh_divsi3_libfunc, cut2_workaround_str): Delete.
+       * config/sh/sh.opt (mcut2-workaround, mdiv=, mdivsi3_libfunc=)
+       (mgettrcost=, multcost=): New options.
+
+2005-06-01  Richard Sandiford  <rsandifo@redhat.com>
+
+       * opts.h (cl_option_state): New structure.
+       (get_option_state): Declare.
+       * opts.c (get_option_state): New function.
+       * toplev.c (option_affects_pch_p): New function.
+       (default_get_pch_validity): Store the state of all options for which
+       option_affects_pch_p returns true.
+       (default_pch_valid_p): Check the state of those options here.
+       Only check target_flags separately if targetm.check_pch_target_Flags
+       is nonnull or if TARGET_SWITCHES is defined.
+
 2005-06-01  Richard Sandiford  <rsandifo@redhat.com>
 
        * config/mips/mips-protos.h (mips_use_ins_ext_p): Remove parameter