Skip to content
Snippets Groups Projects
  1. Mar 14, 2005
    • Tobias Schlüter's avatar
      re PR fortran/20467 (Bad fortran code causes ICE) · 2bb02bf0
      Tobias Schlüter authored
      fortran/
      PR fortran/20467
      * symbol.c (check_conflict): A dummy argument can't be a statement
      function.
      
      testsuite/
      PR fortran/20467
      * gfortran.dg/stfunc_2.f90: New test.
      
      From-SVN: r96443
      2bb02bf0
    • Kazu Hirata's avatar
      * cfgbuild.c: Update comments. · 55b18c19
      Kazu Hirata authored
      From-SVN: r96442
      55b18c19
    • Roger Sayle's avatar
      re PR rtl-optimization/17236 (inefficient code for long long multiply on x86) · f927760b
      Roger Sayle authored
      	PR rtl-optimization/17236
      	* optabs.c (expand_doubleword_mult): New helper function split out
      	from expand_binop.  Permute the order in which instructions are
      	emitted to minimize the number of simultaneously live registers.
      	(expand_binop): Call expand_doubleword_mult to synthesize a double
      	word multiplication.
      
      From-SVN: r96441
      f927760b
    • Kazu Hirata's avatar
      basic-block.h: Update the prototypes of cached_make_edge and rtl_make_eh_edge. · a6ee1a15
      Kazu Hirata authored
      	* basic-block.h: Update the prototypes of cached_make_edge and
      	rtl_make_eh_edge.
      	* cfg.c (cached_make_edge): Take edge_cache representing one
      	row of the adjacency matrix of edges.
      	* cfgbuild.c (make_label_edge, rtl_make_eh_edge): Likewise.
      	(make_edges): Initialize edge_cache to represent one row of
      	the adjacency matrix of edges.
      
      From-SVN: r96440
      a6ee1a15
    • Zdenek Dvorak's avatar
      tree-ssa-phiopt.c (minmax_replacement, [...]): New functions. · 8eaa0f34
      Zdenek Dvorak authored
      	* tree-ssa-phiopt.c (minmax_replacement, blocks_in_phiopt_order):
      	New functions.
      	(tree_ssa_phiopt): Use blocks_in_phiopt_order and minmax_replacement.
      	Remove unused removed_phis variable.
      	(conditional_replacement): Use build1/build2.
      	(abs_replacement): Use last_and_only_stmt and build1/build2.
      
      	* gcc.dg/tree-ssa/phi-opt-5.c: New test.
      
      From-SVN: r96439
      8eaa0f34
    • Zdenek Dvorak's avatar
      builtin-attrs.def (ATTR_NOVOPS, [...]): New. · dcd6de6d
      Zdenek Dvorak authored
      	* builtin-attrs.def (ATTR_NOVOPS, ATTR_NOVOPS_LIST,
      	ATTR_PURE_NOTHROW_NOVOPS_LIST): New.
      	* builtins.def (ATTR_MATHFN_FPROUNDING): Use NOVOPS.
      	(BUILT_IN_PREFETCH): Set the NOVOPS attribute.
      	* c-common.c (handle_novops_attribute): New function.
      	(c_common_attribute_table): Add "no vops" entry.
      	* c-decl.c (merge_decls): Copy DECL_IS_NOVOPS.
      	* calls.c (flags_from_decl_or_type): Set ECF_NOVOPS.
      	* tree-ssa-operands.c (get_call_expr_operands): Do not
      	create virtual operands for calls with ECF_NOVOPS flag.
      	* tree.h (DECL_IS_NOVOPS): New macro.
      	(struct tree_decl): Add novops_flag.
      	(ECF_NOVOPS): New constant.
      
      From-SVN: r96438
      dcd6de6d
    • Uros Bizjak's avatar
      re PR target/17688 ([4.1] x87 fops can handle HImodes) · 0e8c2b0d
      Uros Bizjak authored
      	PR target/17688
      	* config/i386/i386.c (x86_use_himode_fiop): New.
      	(x86_use_simode_fiop): Rename from x86_use_fiop.
      	* config/i386/i386.h (x86_use_himode_fiop): Declare.
      	(TARGET_USE_HIMODE_FIOP): New.
      	(x86_use_simode_fiop): Rename from x86_use_fiop.
      	(TARGET_USE_SIMODE_FIOP): Rename from TARGET_USE_FIOP.
      
      	* config/i386/i386.md (X87MODEI12): New mode macro define.
      	(*cmpfp_<mode>): Rename from *cmpfp_si.  Use X87MODEI12 mode macro
      	to implement x87 FP compare with HImode input operands.
      	(*fp_jcc_8<mode>_387, splitter): Rename from *fp_jcc_8_387.
      	Use X87MODEI12 mode macro to handle HImode input operands.
      	(*fop_sf_2<mode>_i387, *fop_sf_3<mode>_i387, *fop_df_2<mode>_i387,
      	*fop_df_3<mode>_i387, *fop_xf_2<mode>_i387, *fop_xf_3<mode>_i387):
      	Renamed from *fop_sf_2_i387, *fop_sf_3_i387, *fop_df_2_i387,
      	*fop_df_3_i387, *fop_xf_2_i387, *fop_xf_3_i387. Use X87MODEI12 mode
      	macro to implement x87 operators with HImode input operands.
      	(fop splitters): Use X87MODEI12 mode macro to handle HImode
      	input operands.
      
      From-SVN: r96437
      0e8c2b0d
    • Eric Botcazou's avatar
      Fix bogus date. · e4a31e19
      Eric Botcazou authored
      From-SVN: r96436
      e4a31e19
    • Zdenek Dvorak's avatar
      tree-cfg.c (find_taken_edge_cond_expr): Use zero_p instead of integer_zerop. · f1b19062
      Zdenek Dvorak authored
      	* tree-cfg.c (find_taken_edge_cond_expr): Use zero_p instead of
      	integer_zerop.
      	* tree-gimple.c (is_gimple_min_invariant): Consider overflowed
      	constants invariant.
      
      	* fortran/trans-intrinsic.c (gfc_conv_intrinsic_ishft): Convert
      	the argument of the shift to the unsigned type.
      
      From-SVN: r96435
      f1b19062
    • Zdenek Dvorak's avatar
      basic-block.h (BB_VISITED): Removed. · 9e32d2be
      Zdenek Dvorak authored
      	* basic-block.h (BB_VISITED): Removed.
      	* cfganal.c (dfs_enumerate_from): Do not use BB_VISITED flag.
      
      From-SVN: r96434
      9e32d2be
    • Daniel Jacobowitz's avatar
      Fix typo in changelog entry. · ae83e8ae
      Daniel Jacobowitz authored
      From-SVN: r96433
      ae83e8ae
    • Kriang Lerdsuwanakij's avatar
      re PR c++/4403 (incorrect class becomes a friend in template) · 5a24482e
      Kriang Lerdsuwanakij authored
      	PR c++/4403
      	PR c++/9783, DR433
      	* name-lookup.c (pushtag): Skip template parameter scope when
      	scope is ts_global.  Don't push tag into template parameter
      	scope.
      	* pt.c (instantiate_class_template): Reorder friend class
      	template substitution to handle non-dependent friend class
      	that hasn't been previously declared.
      
      	* g++.dg/template/friend34.C: New test.
      	* g++.dg/template/friend35.C: Likewise.
      	* g++.old-deja/g++.pt/inherit2.C: Remove XFAIL's.
      
      From-SVN: r96432
      5a24482e
    • Falk Hueffner's avatar
      re PR target/20424 (Bootstrap failure on alphaev56) · 18410793
      Falk Hueffner authored
      	PR bootstrap/20424
      	* config/alpha/alpha.c (alpha_fold_builtin_cmpbge): Fix typo.
      
      From-SVN: r96431
      18410793
    • Kriang Lerdsuwanakij's avatar
      Friend class name lookup 5/n PR c++/1016 · bd3d082e
      Kriang Lerdsuwanakij authored
      	Friend class name lookup 5/n
      	PR c++/1016
      	* cp-tree.h (pushtag): Adjust declaration.
      	* decl.c (lookup_and_check_tag): Call lookup_type_scope if
      	lookup_name fails.
      	(xref_tag): Adjust call to pushtag.  Make hidden class visible.
      	(start_enum): Adjust call to pushtag.
      	* name-lookup.c (ambiguous_decl): Ignore hidden names.
      	(qualify_lookup): Change return type to bool.
      	(hidden_name_p): New function.
      	(lookup_namespace_name, unqualified_namespace_lookup,
      	lookup_name_real): Use it.
      	(lookup_type_scope): Update comments.
      	(maybe_process_template_type_declaration): Change parameter name
      	from globalize to is_friend.
      	(pushtag): Change globalize parameter of type int to tag_scope.
      	Hide name if introduced by friend declaration.
      	* name-lookup.h (hidden_name_p): Add declaration.
      	* parser.c (cp_parser_lookup_name): Don't deal with hidden name
      	here.
      	* pt.c (push_template_decl_real): Make hidden class template
      	visible.
      	(lookup_template_class, instantiate_class_template): Adjust call
      	to pushtag.
      	* semantics.c (begin_class_definition): Likewise.
      	* rtti.c (init_rtti_processing, build_dynamic_cast_1,
      	tinfo_base_init, emit_support_tinfos): Use ts_current instead of
      	ts_global.
      
      	* g++.dg/lookup/hidden-class1.C: New test.
      	* g++.dg/lookup/hidden-class2.C: Likewise.
      	* g++.dg/lookup/hidden-class3.C: Likewise.
      	* g++.dg/lookup/hidden-class4.C: Likewise.
      	* g++.dg/lookup/hidden-class5.C: Likewise.
      	* g++.dg/lookup/hidden-class6.C: Likewise.
      	* g++.dg/lookup/hidden-class7.C: Likewise.
      	* g++.dg/lookup/hidden-class8.C: Likewise.
      	* g++.dg/lookup/hidden-class9.C: Likewise.
      	* g++.dg/lookup/hidden-temp-class1.C: Likewise.
      	* g++.dg/lookup/hidden-temp-class2.C: Likewise.
      	* g++.dg/lookup/hidden-temp-class3.C: Likewise.
      	* g++.dg/lookup/hidden-temp-class4.C: Likewise.
      	* g++.dg/lookup/hidden-temp-class5.C: Likewise.
      	* g++.dg/lookup/hidden-temp-class6.C: Likewise.
      	* g++.dg/lookup/hidden-temp-class7.C: Likewise.
      	* g++.dg/lookup/hidden-temp-class8.C: Likewise.
      	* g++.dg/lookup/hidden-temp-class9.C: Likewise.
      	* g++.dg/lookup/hidden-temp-class10.C: Likewise.
      	* g++.dg/lookup/hidden-temp-class11.C: Likewise.
      
      From-SVN: r96430
      bd3d082e
    • Kazu Hirata's avatar
      alloc-pool.c, [...]: Update copyright. · a2130901
      Kazu Hirata authored
      	* alloc-pool.c, except.h, ggc-common.c, ggc-zone.c, ggc.h,
      	stringpool.c, config/mips/mips-protos.h: Update copyright.
      
      From-SVN: r96428
      a2130901
    • Kazu Hirata's avatar
      * ggc-zone.c: Fix comment typos. · c1b97125
      Kazu Hirata authored
      From-SVN: r96427
      c1b97125
    • Alan Modra's avatar
      rs6000-protos.h: Replace "struct rtx_def *" throughout with its typedef, "rtx". · 9390387d
      Alan Modra authored
      	* config/rs6000/rs6000-protos.h: Replace "struct rtx_def *"
      	throughout with its typedef, "rtx".
      	* config/rs6000/rs6000.c: Likewise.  Formatting fixes.
      	(rs6000_tls_symbol_ref_1): Remove inline keyword.
      	* config/rs6000/rs6000.h (REG_ALLOC_ORDER): Formatting.  Reorder
      	regs in comment to match code.
      
      From-SVN: r96420
      9390387d
    • Kazu Hirata's avatar
      tree-cfg.c (verify_stmts): Check that bb_for_stmt (stmt) == bb for every PHI node and statement. · 8de1fc1b
      Kazu Hirata authored
      	* tree-cfg.c (verify_stmts): Check that
      	bb_for_stmt (stmt) == bb for every PHI node and statement.
      
      From-SVN: r96418
      8de1fc1b
    • Mark Mitchell's avatar
      Update message · 80fb36b1
      Mark Mitchell authored
      From-SVN: r96417
      80fb36b1
    • Mark Mitchell's avatar
      re PR c++/20157 (Internal compiler error on invalid code) · 98f99d7f
      Mark Mitchell authored
      	PR c++/20157
      	* pt.c (determine_specialization): Reject non-specializations.
      
      	PR c++/20157
      	* g++.dg/template/error18.C: New test.
      
      From-SVN: r96414
      98f99d7f
    • Kazu Hirata's avatar
      regclass.c (reg_class_superclasses, [...]): Make them static. · 1b28cd06
      Kazu Hirata authored
      	* regclass.c (reg_class_superclasses, reg_class_subclasses):
      	Make them static.
      	* hard-reg-set.h: Remove the corresponding declarations.
      
      From-SVN: r96410
      1b28cd06
    • Kazu Hirata's avatar
      function.c (get_func_frame_size): Make it static. · 7b25e663
      Kazu Hirata authored
      	* function.c (get_func_frame_size): Make it static.
      	* function.h: Remove the corresponding type.
      
      From-SVN: r96409
      7b25e663
    • Kazu Hirata's avatar
      except.c (check_handled): Make it static. · c148389e
      Kazu Hirata authored
      	* except.c (check_handled): Make it static.
      	* except.h: Remove the corresponding prototype.
      
      From-SVN: r96408
      c148389e
    • Alan Modra's avatar
      config.gcc: Remove excess indentation. · fe3e7450
      Alan Modra authored
      	* config.gcc: Remove excess indentation.
      	(powerpc*-*-*, rs6000-*-*): Accept --with-cpu/tune power5 and 8548.
      
      From-SVN: r96405
      fe3e7450
    • GCC Administrator's avatar
      Daily bump. · 1d2093c3
      GCC Administrator authored
      From-SVN: r96401
      1d2093c3
  2. Mar 13, 2005
    • Roger Sayle's avatar
      re PR middle-end/19331 (Inefficient code generated for bitfield assignment) · 362cb1bb
      Roger Sayle authored
      	PR middle-end/19331
      	* tree.c (get_unwidened): Treat CONVERT_EXPR and NOP_EXPR identically.
      	* fold-const.c (fold_sign_changed_comparison): Likewise.
      	(fold_binary): Optimize comparisons against widened operands if
      	the extension is represented by a CONVERT_EXPR, same as a NOP_EXPR.
      
      From-SVN: r96397
      362cb1bb
    • Ben Elliston's avatar
      re PR c++/16792 (ICE in gen_subprogram_die, at dwarf2out.c:11267) · 334f3a34
      Ben Elliston authored
      	PR debug/16792
      	* g++.dg/debug/pr16792.C: New test.
      
      From-SVN: r96396
      334f3a34
    • Eric Botcazou's avatar
      sparc.c (struct_value_alias_set): New global variable. · 1da4c3a7
      Eric Botcazou authored
      	* config/sparc/sparc.c (struct_value_alias_set): New global variable.
      	(sparc_override_options): Initialize it.
      	(sparc_struct_value_rtx): Set it on the MEM to be returned.
      
      From-SVN: r96395
      1da4c3a7
    • Joseph Myers's avatar
      anon-struct-6.c, [...]: Ensure uniqueness of test assertion names. · 053e7c38
      Joseph Myers authored
      	* gcc.dg/anon-struct-6.c, gcc.dg/array-8.c,
      	gcc.dg/cpp/19940712-1.c, gcc.dg/cpp/19951025-1.c,
      	gcc.dg/cpp/tr-warn6.c, gcc.dg/deprecated.c, gcc.dg/init-bad-1.c,
      	gcc.dg/init-bad-2.c, gcc.dg/init-bad-3.c, gcc.dg/m-un-2.c,
      	gcc.dg/parm-mismatch-1.c, gcc.dg/redecl-1.c: Ensure uniqueness of
      	test assertion names.
      
      From-SVN: r96391
      053e7c38
    • David Edelsohn's avatar
      predicates.md (mem_or_easy_const_operand): Delete. · 97c54d9a
      David Edelsohn authored
              * config/rs6000/predicates.md (mem_or_easy_const_operand): Delete.
              (reg_or_none500mem_operand): New predicate.
              (zero_reg_mem_operand): New predicate.
              * config/rs6000/rs6000.md (extendsfdf2): Change operand1 predicate
              to reg_or_none500mem_operand.
              (extendsfdf2_fpr): Add MEM alternative.
              (extenddftf2_internal): Change operand2 predicate to
              zero_reg_mem_operand.
      
      From-SVN: r96390
      97c54d9a
    • Tobias Schlüter's avatar
      re PR fortran/18600 (ICE NIST FM020.f reduced case) · f96c6123
      Tobias Schlüter authored
      PR fortran/18600
      * gfortran.dg/stfunc_1.f90: New test.
      
      From-SVN: r96389
      f96c6123
    • Tobias Schlüter's avatar
      re PR fortran/16907 (Non-integer array indices rejected) · ee943062
      Tobias Schlüter authored
      fortran/
      PR fortran/16907
      * resolve.c (gfc_resolve_index): Allow REAL indices as an extension.
      
      testsuite/
      PR fortran/16907
      * gfortran.dg/real_index_1.f90: New test.
      
      From-SVN: r96385
      ee943062
    • Tobias Schlüter's avatar
      re PR fortran/20323 (optional arguments incorrectly accepted in specification expressions) · 8f9c06ca
      Tobias Schlüter authored
      fortran/
      PR fortran/20323
      * resolve.c (gfc_resolve): Check if character lengths are
      specification expressions.
      
      testsuite/
      PR fortran/20323
      * gfortran.dg/spec_expr_1.f90: New test.
      
      From-SVN: r96382
      8f9c06ca
    • Daniel Jacobowitz's avatar
      ggc-zone.c: Rewritten. · 08cee789
      Daniel Jacobowitz authored
      	* ggc-zone.c: Rewritten.
      
      	* alloc-pool.c (dump_alloc_pool_statistics): Don't print statistics
      	if there are none.
      	* configure.ac: Define GGC_ZONE for --with-gc=zone.
      	* config.in: Regenerated.
      	* configure: Regenerated.
      	* gentype.c (write_types_process_field, write_func_for_structure):
      	Pass new argument to gt_pch_note_object.
      	* ggc-common.c (struct ptr_data): Add TYPE.
      	(gt_pch_note_object): Take TYPE argument and save it.
      	(call_count): Update call to ggc_pch_count_object.
      	(call_alloc): Update call to ggc_pch_alloc_object.
      	(gt_pch_save): Call ggc_pch_prepare_write after paddng the PCH
      	file.
      	* ggc-none.c (rtl_zone, garbage_zone, ggc_alloc_zone_stat): Delete.
      	* ggc-page.c (rtl_zone, tree_zone, garbage_zone)
      	(ggc_alloc_zone_stat): Delete.
      	(ggc_pch_count_object, ggc_pch_alloc_object): Add TYPE argument.
      	* ggc.h (gt_pch_note_object, ggc_pch_count_object)
      	(ggc_pch_alloc_object): Update prototypes.
      	(garbage_zone): Delete.
      	(tree_zone, rtl_zone, ggc_alloc_zone_stat, ggc_alloc_zone): Move to
      	GGC_ZONE conditional.  Update.  Change tree_zone and rtl_zone into
      	pointers.
      	(tree_id_zone): New variable.
      	(ggc_alloc_cleared_zone): Remove unused.
      	(ggc_alloc_zone): Define.
      	(ggc_alloc_rtvec, ggc_alloc_tree): Update to use ggc_alloc_zone.
      	* rtl.c (rtx_alloc_stat, shallow_copy_rtx_stat): Use
      	ggc_alloc_zone_stat.
      	* stringpool.c (gt_pch_n_S): Update call to gt_pch_note_object.
      	* tree.c (copy_node_stat, make_tree_binfo_stat, make_tree_vec_stat)
      	(tree_cons_stat, build1_stat): Update call to ggc_alloc_zone_stat.
      	(make_node_stat): Likewise.  Use tree_id_zone.
      
      From-SVN: r96381
      08cee789
    • Daniel Jacobowitz's avatar
      configure.ac: Check for MIPS TLS. · 69229b81
      Daniel Jacobowitz authored
      
      	* configure.ac: Check for MIPS TLS.
      	* configure: Regenerated.
      	* config/mips/mips-protos.h (enum mips_symbol_type): Add
      	SYMBOL_TLS, SYMBOL_TLSGD, SYMBOL_TLSLDM, SYMBOL_DTPREL,
      	SYMBOL_GOTTPREL, and SYMBOL_TPREL.
      	* config/mips/mips.c (mips_regno_to_class): Handle V1_REG.
      	(TARGET_HAVE_TLS, TARGET_CANNOT_FORCE_CONST_MEM): Define.
      	(mips_classify_symbol, mips_symbolic_constant_p)
      	(mips_symbolic_address_p, mips_symbol_insns): Handle TLS symbols.
      	(mips_tls_operand_p, mips_call_tls_get_addr)
      	(mips_legitimize_tls_address, mips_cannot_force_const_mem)
      	(mips_tls_symbol_ref_1): New functions.
      	(mips_legitimize_address, mips_legitimize_const_move): Call
      	mips_legitimize_tls_address.
      	(override_options): Handle V1_REG and TLS symbols.  Disable TLS
      	for MIPS16.
      	* config/mips/mips.h (enum reg_class, REG_CLASS_NAMES)
      	(REG_CLASS_CONTENTS, GR_REG_CLASS_P): Include V1_REG.
      	(mips_char_to_class): Document V1_REG.
      	(HAVE_AS_TLS): Provide default.
      	* config/mips/mips.md (UNSPEC_TLS_LDM, UNSPEC_TLS_GET_TP): New
      	constants.
      	(load_got<mode>): Renamed from *load_got<mode>.  Allow when
      	!TARGET_ABICALLS.
      	(tls_get_tp_<mode>): New instruction.
      
      Co-Authored-By: default avatarJoseph Myers <joseph@codesourcery.com>
      
      From-SVN: r96380
      69229b81
    • Daniel Jacobowitz's avatar
      configure.ac: Update checks for target tools. · b095fe2c
      Daniel Jacobowitz authored
      	* configure.ac: Update checks for target tools.
      	* configure: Regenerated.
      
      From-SVN: r96379
      b095fe2c
    • Daniel Jacobowitz's avatar
      0bfb33e5
    • Roger Sayle's avatar
      expmed.c (expand_mult): Use synthetic multiplication sequences for more classes of DImode... · 65dc9350
      Roger Sayle authored
      	* expmed.c (expand_mult): Use synthetic multiplication sequences for
      	more classes of DImode multiplication by constant.  Allow both
      	multiplication by small negative constants (by performing a
      	multiplication by a positive constant and negating the result) and
      	multiplications by large powers of two, by using a left shift.
      
      From-SVN: r96377
      65dc9350
    • Kazu Hirata's avatar
      tree-ssa-phiopt.c (value_replacement): Remove local variable result. · 92c54d2c
      Kazu Hirata authored
      	* tree-ssa-phiopt.c (value_replacement): Remove local variable
      	result.
      
      From-SVN: r96376
      92c54d2c
    • Kazu Hirata's avatar
      tree-ssa-live.c (build_tree_conflict_graph): Remove local variable ann. · 0b4961d0
      Kazu Hirata authored
      	* tree-ssa-live.c (build_tree_conflict_graph): Remove local
      	variable ann.
      
      From-SVN: r96375
      0b4961d0
Loading