1. 28 Mar, 2008 11 commits
    • re PR rtl-optimization/19580 (missed load/store motion) · 626f4dd8
      2008-03-28  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/19580
      	* gcc.dg/tree-ssa/loop-34.c: New testcase.
      
      From-SVN: r133683
      Richard Guenther committed
    • Makefile.in (POSTCOMPILE): New variable. · 161031e3
      	* Makefile.in (POSTCOMPILE): New variable.
      	(.c.o): Use it.
      
      From-SVN: r133682
      Tom Tromey committed
    • fold-const.c (tree_unary_nonnegative_warnv_p): Make it public. · 2d3cd5d5
      2008-03-28  Rafael Espindola  <espindola@google.com>
      
      	* fold-const.c (tree_unary_nonnegative_warnv_p): Make it public.
      	(tree_binary_nonnegative_warnv_p): Make it public.
      	(tree_single_nonnegative_warnv_p): Make it public.
      	(tree_invalid_nonnegative_warnv_p): Make it public.
      	(tree_unary_nonzero_warnv_p): Make it public.
      	(tree_binary_nonzero_warnv_p): Make it public
      	(tree_single_nonzero_warnv_p): Make it public.
      	* tree-vrp.c (vrp_evaluate_conditional_warnv_with_ops): New function.
      	(extract_range_from_binary_expr): Split the expr argument.
      	(extract_range_from_unary_expr): Split the expr argument.
      	(extract_range_from_comparison): Split the expr argument.
      	(extract_range_from_expr): Use the new aux functions.
      	(vrp_evaluate_conditional_warnv): Use
      	vrp_evaluate_conditional_warnv_with_ops.
      	* tree.h (tree_unary_nonzero_warnv_p): Declare.
      	(tree_binary_nonzero_warnv_p): Declare.
      	(tree_single_nonzero_warnv_p): Declare.
      	(tree_expr_nonzero_warnv_p): Declare.
      	(tree_unary_nonnegative_warnv_p): Declare.
      	(tree_binary_nonnegative_warnv_p): Declare.
      	(tree_single_nonnegative_warnv_p): Declare.
      	(tree_invalid_nonnegative_warnv_p): Declare.
      
      From-SVN: r133681
      Rafael Avila de Espindola committed
    • re PR tree-optimization/30317 (VRP cannot extract a range from (unsigned int) i + 0x0ffffffff > 4) · 2ab8dbf4
      2008-03-28  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/30317
      	PR tree-optimization/30911
      	PR tree-optimization/34793
      	* tree-vrp.c (set_and_canonicalize_value_range): New function.
      	(struct assert_locus_d): New member EXPR.
      	(register_new_assert_for): Add EXPR parameter to support
      	ASSERT_EXPR <name, expr OP limit>.
      	(register_edge_assert_for_1): Adjust callers.
      	(find_assert_locations): Likewise.
      	(process_assert_insertions_for): Build condition from
      	expression.
      	(extract_range_from_assert): Handle ASSERT_EXPRs
      	of the form ASSERT_EXPR <name, expr OP limit>.
      	(register_edge_assert_for_2): New helper registering
      	asserts for comparisons.  Recognize range tests of the form
      	(unsigned)i - CST1 OP CST2.
      	(register_edge_assert_for_1): Use it.
      	(register_edge_assert_for): Likewise.
      	* tree.def (ASSERT_EXPR): Document extra allowed conditional
      	expressions.
      	(needs_overflow_infinity): Integer sub-types
      	do not need overflow infinities.
      	(vrp_val_is_max): The extreme values of integer sub-types
      	are those of the base type.
      	(vrp_val_is_min): Likewise.
      
      	* gcc.dg/tree-ssa/vrp35.c: New testcase.
      	* gcc.dg/tree-ssa/vrp36.c: Likewise.
      	* gcc.dg/tree-ssa/vrp37.c: Likewise.
      
      From-SVN: r133680
      Richard Guenther committed
    • symbol.c (gfc_get_default_type): Fix error message... · b0be8e5c
      2008-03-28  Tobias Burnus  <burnus@net-b.de>
      
             * symbol.c (gfc_get_default_type): Fix error message; option
             -fallow_leading_underscore should be -fallow-leading-underscore
      
      From-SVN: r133678
      Tobias Burnus committed
    • re PR target/31110 (Problem while compiling gcc for mn10300-elf) · fc4f3261
      PR target/31110
         * config/mn10300/mn10300.c (mn10300_secondary_reload_class):
              Return GENERAL_REGS for stack adjustment reloads.
      
      From-SVN: r133675
      Nick Clifton committed
    • re PR target/31334 (Bad codegen for vector initializer with constants prop'd… · 501fb355
      re PR target/31334 (Bad codegen for vector initializer with constants prop'd into a vector initializer)
      
      2008-03-28  Andrew Pinski  <andrew_pinski@playstation.sony.com>
      
              PR target/31334
              * config/rs6000/rs6000.c (rs6000_expand_vector_init): Create a
              const_vector when all the vectors are constant.
      
      2008-03-28  Andrew Pinski  <andrew_pinski@playstation.sony.com>
      
              PR target/31334
              * gcc.target/powerpc/altivec-25.c: Nnew testcase.
      
      From-SVN: r133674
      Andrew Pinski committed
    • re PR fortran/35724 (Compile time segmentation fault for CSHIFT with negative third arg) · 15f4eb44
      2008-03-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR fortran/35724
      	* gfortran.dg/cshift_shift_real_2.f90: New test.
      
      From-SVN: r133669
      Jerry DeLisle committed
    • re PR fortran/35724 (Compile time segmentation fault for CSHIFT with negative third arg) · 97d650cc
      2008-03-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	PR fortran/35724
      	* iresolve.c (gfc_resolve_cshift): Check for NULL symtree in test for
      	optional argument attribute.
      
      From-SVN: r133668
      Jerry DeLisle committed
    • * fr.po: Update. · 5bbc43bf
      From-SVN: r133665
      Joseph Myers committed
    • Daily bump. · 0ca6167c
      From-SVN: r133663
      GCC Administrator committed
  2. 27 Mar, 2008 22 commits
    • xtensa.c (gen_float_relational): Handle unordered comparisons. · ff779f98
      	* config/xtensa/xtensa.c (gen_float_relational): Handle unordered
      	comparisons.
      	* config/xtensa/xtensa.md (any_cond): Add unordered comparisons.
      	(any_scc_sf): Add uneq, unlt, unle and unordered operators.
      	(scc_sf): New.
      	(s<code>_sf): Use new scc_sf attribute for opcode names.
      
      From-SVN: r133659
      Bob Wilson committed
    • * zh_CN.po: Update. · ad4426d0
      From-SVN: r133656
      Joseph Myers committed
    • sourcebuild.texi, [...]: Revert automatic dependency patch. · e980df8e
      gcc/
      	* doc/sourcebuild.texi, doc/install.texi, configure, aclocal.m4,
      	configure.ac, Makefile.in, config/t-darwin, config/m32c/t-m32c,
      	config/spu/t-spu-elf, config/i386/t-interix,
      	config/i386/t-cygming, config/i386/x-i386, config/i386/t-cygwin,
      	config/i386/x-darwin, config/i386/x-mingw32,
      	config/i386/t-netware, config/i386/x-cygwin, config/i386/t-nwld,
      	config/sh/t-sh, config/sh/t-symbian, config/x-linux,
      	config/t-sol2, config/x-hpux, config/x-darwin, config/ia64/t-ia64,
      	config/x-solaris, config/t-vxworks, config/m68k/t-uclinux,
      	config/rs6000/x-rs6000, config/rs6000/x-darwin64,
      	config/rs6000/x-darwin, config/rs6000/t-rs6000,
      	config/score/t-score-elf, config/arm/t-strongarm-pe,
      	config/arm/t-pe, config/arm/t-arm, config/arm/t-wince-pe,
      	config/v850/t-v850, config/v850/t-v850e, config/bfin/t-bfin-linux:
      	Revert automatic dependency patch.
      gcc/java/
      	* Make-lang.in: Revert automatic dependency patch.
      gcc/objc/
      	* Make-lang.in: Revert automatic dependency patch.
      gcc/objcp/
      	* Make-lang.in: Revert automatic dependency patch.
      gcc/cp/
      	* Make-lang.in: Revert automatic dependency patch.
      gcc/fortran/
      	* Make-lang.in: Revert automatic dependency patch.
      
      From-SVN: r133652
      Tom Tromey committed
    • decl.c (gnat_to_gnu_entity): Also set the public flag if the procedure is imported. · 2bc894d9
      	* decl.c (gnat_to_gnu_entity) <E_Procedure>: Also set the public flag
      	if the procedure is imported.
      
      From-SVN: r133650
      Eric Botcazou committed
    • re PR target/35657 (Alignments of DFP types aren't consistent) · c84555eb
      2008-03-27  H.J. Lu  <hongjiu.lu@intel.com>
      
      	PR target/35657
      	* config/i386/i386.c (ix86_function_arg_boundary): Align
      	decimal floating point to its natural boundary.
      
      From-SVN: r133649
      H.J. Lu committed
    • multi-ix.c: Limit CHUNK size between 1 and 500. · 75f8beae
              * gcc.c-torture/execute/multi-ix.c: Limit CHUNK size between 1 and 500.
              (main): Exit early for CHUNK less than 40 to avoid stack corruption.
      
      From-SVN: r133648
      Uros Bizjak committed
    • re PR tree-optimization/35716 (gfortran.dg/assign_6.f and gfortran.dg/g77/dnrm2.f) · ffd837fe
      2008-03-27  Richard Guenther  <rguenther@suse.de>
      
      	PR middle-end/35716
      	* fold-const.c (fold_comparison): Restrict distinct decl
      	comparison folding to VAR_DECLs and PARM_DECLs.  Do not
      	solely rely on operand_equal_p.
      
      From-SVN: r133647
      Richard Guenther committed
    • re PR c/32511 (GCC rejects inline+weak function) · 6b4e94bc
      2008-03-27  Richard Guenther  <rguenther@suse.de>
      
      	PR c/32511
      	* c-common.c (handle_weak_attribute): Reject combination of
      	weak and inline.
      
      	* gcc.dg/attr-weak-1.c: New testcase.
      
      From-SVN: r133646
      Richard Guenther committed
    • re PR tree-optimization/32810 (Not folding of const element for goto) · 62bc00e2
      2008-03-27  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/32810
      	* tree-ssa-ccp.c (get_symbol_constant_value): Strip useless
      	conversions from DECL_INITIAL.
      	(fold_const_aggregate_ref): Likewise from constructor elements.
      
      	* gcc.dg/tree-ssa/ssa-ccp-18.c: New testcase.
      
      From-SVN: r133645
      Richard Guenther committed
    • re PR bootstrap/35704 (Bootstrap failure on i686-apple-darwin9 at revision 133519 (take 2).) · 525521b6
      2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>
      
      	PR obj-c++/35704
      	* typeck.c (build_x_compound_expr): Use cp_build_compound_expr.
      	(build_compound_expr): New, for compatibility with C
      	build_compound_expr.
      	(cp_build_compound_expr): Renamed from build_compound_expr.
      	(build_c_cast): New, for compatibility with C build_c_cast.
      	(cp_build_c_cast): Renamed from build_c_cast.
      	* init.c (build_vec_delete_1): Fix calls to build_compound_expr.
      	* decl.c (cxx_maybe_build_cleanup): Ditto.
      	* cp-tree.h (build_compound_expr): Add C-compatibile prototype.
      	(cp_build_compound_expr): Renamed from build_compound_expr.
      	(build_c_cast): Add C-compatible prototype.
      	(cp_build_c_cast): Renamed from build_c_cast.
      	* typeck2.c (build_functional_cast): Use cp_build_c_cast.
      	* parser.c (cp_parser_cast_expression): Fix call to build_c_cast.
      
      2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>
      
      	PR obj-c++/35704	
      	* objc-act.c (objc_build_component_ref): Fix call to
      	finish_class_member_access_expr.
      	(objc_generate_cxx_ctor_or_dtor): Fix call to
      	build_special_member_call.
      
      From-SVN: r133643
      Douglas Gregor committed
    • pt.c (tsubst_copy): Cope with tsubst_pack_expansion returning a pack expansion... · 063cc99c
      2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>
      
      	* pt.c (tsubst_copy) <case SIZEOF_EXPR>: Cope with
      	tsubst_pack_expansion returning a pack expansion, or a TREE_VEC
      	ending in a pack expansion, both of which can occur when
      	substituting into a nested template.
      	(tsubst_copy_and_build) <case SIZEOF_EXPR>: When we're
      	instantiating the sizeof...(X) form, make tsubst_copy do the work.
      	* parser.c (cp_parser_template_parameter): Deal with unnamed
      	non-type template parameter packs identified by pack expansions in
      	the parameter type.
      
      2008-03-27  Douglas Gregor  <doug.gregor@gmail.com>
      
             * g++.dg/cpp0x/variadic91.C: New.
      
      From-SVN: r133642
      Douglas Gregor committed
    • configure.ac (frags): Don't set, use frag instead. · c91c9c2e
      2008-03-27  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure.ac (frags): Don't set, use frag instead.
      	(PICFLAG): Set here and substitute.
      	* Makefile.in (PICFLAG): Substitute from autoconf.
      	* configure: Regenerate.
      
      From-SVN: r133639
      Paolo Bonzini committed
    • tree-affine.h (aff_combination_expand): Declare. · 72425608
      2008-03-27  Zdenek Dvorak  <ook@ucw.cz>
      
      	* tree-affine.h (aff_combination_expand): Declare.
      	(get_inner_reference_aff): Likewise.
      	* tree-affine.c	(aff_combination_expand): Split out from
      	tree_to_aff_combination_expand.
      	(get_inner_reference_aff): New function.
      	* tree-parloops.c (loop_parallel_p): Free vectorizer info.
              * tree-ssa-loop-im.c: Include tree-affine.h and pointer-set.h.
              (struct lim_aux_data): sm_done field removed.
              (mem_ref_loc_p, mem_ref_locs_p): New types.
              (struct mem_ref): Added id, stored, accesses_in_loop,
              indep_loop, dep_loop, indep_ref, dep_ref fields.
              Removed is_stored, locs and next fields.
              (memory_accesses): New variable.
              (movement_possibility): Do not allow moving statements
              that store to memory.
              (outermost_indep_loop, simple_mem_ref_in_stmt, mem_ref_in_stmt):
              New functions.
              (determine_max_movement): For statements with memory references,
              find the outermost loop in that the reference is independent.
              (move_computations_stmt): Mark the virtual operands for
              renaming.
              (memref_free, mem_ref_alloc, mem_ref_locs_alloc, mark_ref_stored,
              gather_mem_refs_stmt, gather_mem_refs_in_loops, vtoe_hash, vtoe_eq,
              vtoe_free, record_vop_access, get_vop_accesses, get_vop_stores,
              add_vop_ref_mapping, create_vop_ref_mapping_loop,
              create_vop_ref_mapping, analyze_memory_references,
              cannot_overlap_p, mem_refs_may_alias_p, rewrite_mem_ref_loc,
              get_all_locs_in_loop, ref_always_accessed_p,
              refs_independent_p, record_indep_loop, ref_indep_loop_p_1,
              ref_indep_loop_p, can_sm_ref_p, find_refs_for_sm,
              store_motion_loop, store_motion): New functions.
              (struct vop_to_refs_elt): New type.
              (record_mem_ref_loc, free_mem_ref_locs, rewrite_mem_refs,
              memref_hash, memref_eq, hoist_memory_references): Rewritten.
              (schedule_sm): Replaced by...
              (execute_sm): ... this.
              (determine_lsm_ref, hoist_memory_references,
              loop_suitable_for_sm, gather_mem_refs_stmt, gather_mem_refs,
              find_more_ref_vops, free_mem_ref, free_mem_refs,
              determine_lsm_loop, determine_lsm): Removed.
              (tree_ssa_lim_finalize): Free data structures used by store
              motion.
              (tree_ssa_lim): Call analyze_memory_references.  Use
              store_motion instead of determine_lsm.
      
      	* gcc.dg/tree-ssa/loop-32.c: New testcase.
      	* gcc.dg/tree-ssa/loop-33.c: Likewise.
      
      From-SVN: r133637
      Zdenek Dvorak committed
    • config.cc (m68hc11, [...]): Add usegas.h, rename tmake_file to m68hc11/t-m68hc11. · a929bc28
      2008-03-27  Paolo Bonzini  <bonzini@gnu.org>
      
      	* config.cc (m68hc11, m6811, m68hc12, m6812): Add usegas.h,
      	rename tmake_file to m68hc11/t-m68hc11.
      	(mcore): Set inhibit_libc to true.
      	* config.host (alpha*-dec-*vms*): Set extra_programs.
      	(interix3*): Don't use host_xmake_file.
      	* configure.ac: Let config.gcc override inhibit_libc.
      	* configure: Regenerate.
      
      	* config/alpha/x-vms (EXTRA_PROGRAMS): Remove.
      	* config/x-interix: Remove.
      
      	* config/t-openbsd-thread: Remove commented out lines.
      
      	* config/m68hc11/t-m68hc11-gas: Rename to...
      	* config/m68hc11/t-m68hc11: ... this.  Remove T_CPPFLAGS.
      
      	* config/mcore/t-mcore: Remove T_CFLAGS.
      	* config/mcore/t-mcore-pe: Likewise.
      
      From-SVN: r133636
      Paolo Bonzini committed
    • extensions.m4: New. · 60d26958
      config:
      2008-03-27  Paolo Bonzini  <bonzini@gnu.org>
      
      	* extensions.m4: New.
      
      gcc:
      2008-03-27  Paolo Bonzini  <bonzini@gnu.org>
      
      	* configure.ac: Replace custom __GNU_SOURCE test with
      	AC_USE_SYSTEM_EXTENSIONS.  Move it earlier.
      	* aclocal.m4: Regenerate.
      	* configure: Regenerate.
      	* config.in: Regenerate.
      
      From-SVN: r133635
      Paolo Bonzini committed
    • Makefile.tpl (PICFLAG, [...]): Remove. · 639223bd
      2008-03-27  Paolo Bonzini  <bonzini@gnu.org>
      
      	* Makefile.tpl (PICFLAG, PICFLAG_FOR_TARGET): Remove.
      	* Makefile.in: Regenerate.
      
      config:
      2008-03-27  Paolo Bonzini  <bonzini@gnu.org>
      
      	* mh-armpic: Remove.
      	* mh-i370pic: Remove.
      	* mh-m68kpic: Remove.
      	* mh-ppcpic: Remove.
      	* mh-sparcpic: Remove.
      	* mh-ia64pic: Remove.
      	* mh-papic: Remove.
      	* mh-s390pic: Remove.
      	* mh-x86pic: Remove.
      
      From-SVN: r133634
      Paolo Bonzini committed
    • fold-const.c (target.h): Include. · bd03c084
      2008-03-27  Richard Guenther  <rguenther@suse.de>
      
      	* fold-const.c (target.h): Include.
      	(fold_comparison): Fold comparison of addresses of decls
      	that bind locally or of constants.  Consolidate address folding code.
      	* tree-vrp.c (operand_less_p): Deal with non-INTEGER_CST
      	results from fold_binary_to_constant.
      	(compare_values_warnv): Likewise.
      
      	* gcc.dg/fold-addr-1.c: New testcase.
      
      From-SVN: r133632
      Richard Guenther committed
    • re PR tree-optimization/35429 (ICE with complex arithmetic) · 87a72aa8
      2008-03-27  Andrew Pinski  <pinskia@gmail.com>
      
              PR middle-end/35429
              * fold-const.c (fold_truthop): Check for integeral types when folding
              a == 0 && b == 0 and a != 0 || b != 0 .
      
      2008-03-27  Andrew Pinski  <pinskia@gmail.com>
      
              PR middle-end/35429
              * gcc.c-torture/compile/complex-5.c: New test.
      
      From-SVN: r133631
      Andrew Pinski committed
    • unix.c (fd_close): Do not close STDIN. · 40e43495
      2008-03-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	* io/unix.c (fd_close):  Do not close STDIN.
      
      From-SVN: r133630
      Jerry DeLisle committed
    • Daily bump. · e61c4586
      From-SVN: r133628
      GCC Administrator committed
    • tree.c (get_unwidened): Remove code fiddling with COMPONENT_REF. · 6e1b3420
      	* tree.c (get_unwidened): Remove code fiddling with COMPONENT_REF.
      
      From-SVN: r133624
      Eric Botcazou committed
    • sysv.S: Add .note.GNU-stack on Linux. · 3e9608a5
      	* src/sh/sysv.S: Add .note.GNU-stack on Linux.
      	* src/sh64/sysv.S: Likewise.
      
      From-SVN: r133623
      Kaz Kojima committed
  3. 26 Mar, 2008 7 commits