1. 11 Dec, 2008 3 commits
    • Fix testsuite/gfortran.dg/graphite/id-4.f90. · 81b822d5
      2008-12-11  Sebastian Pop  <sebastian.pop@amd.com>
      
      	Fix testsuite/gfortran.dg/graphite/id-4.f90.
      	* graphite.c (scan_tree_for_params): Do not compute the multiplicand
      	when not needed.
      
      2008-12-11  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* graphite.c (build_scops_1): Initialize open_scop.exit
      	and sinfo.last.
      
      2008-12-11  Sebastian Pop  <sebastian.pop@amd.com>
      	    Jan Sjodin  <jan.sjodin@amd.com>
                  Harsha Jagasia  <harsha.jagasia@amd.com>
      
      	PR middle-end/37852
      	PR middle-end/37883
      	PR middle-end/37928
      	PR middle-end/37980
      	PR middle-end/38038
      	PR middle-end/38039
      	PR middle-end/38073
      	PR middle-end/38083
      	PR middle-end/38125
      
      	* tree-phinodes.c (remove_phi_nodes): New, extracted from...
      	* tree-cfg.c (remove_phi_nodes_and_edges_for_unreachable_block): ...here.
      	* tree-flow.h (remove_phi_nodes, canonicalize_loop_ivs): Declared.
      	* Makefile.in (graphite.o): Depend on value-prof.h.
      	(graphite.o-warn): Removed -Wno-error.
      	* tree-parloops.c (canonicalize_loop_ivs): Allow reduction_list 
      	to be a NULL pointer.  Call update_stmt.  Return the newly created 
      	cannonical induction variable.
      
      	* graphite.h (debug_rename_map): Declared.  Fix some comments.
      
      	* graphite.c: Reimplement the code generation from graphite to gimple.
      	Include value-prof.h.
      	(loop_iv_stack_get_iv): Do not return NULL for constant substitutions.
      	(get_old_iv_from_ssa_name): Removed.
      	(graphite_stmt_p): New.
      	(new_graphite_bb): Test for useful statements before building a
      	graphite statement for the basic block.
      	(free_graphite_bb): Do not free GBB_DATA_REFS: this is a bug
      	in free_data_ref that calls BITMAP_FREE (DR_VOPS (dr)) without 
      	reason.
      	(recompute_all_dominators, graphite_verify,
      	nb_reductions_in_loop, graphite_loop_normal_form): New.
      	(scop_record_loop): Call graphite_loop_normal_form.
      	(build_scop_loop_nests): Iterate over all the blocks of the
      	function instead of relying on the incomplete information from
      	SCOP_BBS.  Return the success of the operation.
      	(find_params_in_bb): Use the data from GBB_DATA_REFS.
      	(add_bb_domains): Removed.
      	(build_loop_iteration_domains): Don't call add_bb_domains.
      	Add the iteration domain only to the basic blocks that have been
      	translated to graphite.
      	(build_scop_conditions_1): Add constraints only if the basic
      	block have been translated to graphite.
      	(build_scop_data_accesses): Completely disabled until data
      	dependence is correctly implemented.
      	(debug_rename_elt, debug_rename_map_1, debug_rename_map): New.
      	(remove_all_edges_1, remove_all_edges): Removed.
      	(get_new_name_from_old_name): New.
      	(graphite_rename_variables_in_stmt): Renamed 
      	rename_variables_in_stmt.  Call get_new_name_from_old_name.
      	Use replace_exp	and update_stmt.
      	(is_old_iv): Renamed is_iv.
      	(expand_scalar_variables_stmt): Extra parameter for renaming map.
      	Use replace_exp	and update_stmt.
      	(expand_scalar_variables_expr): Same.  Use the map to get the
      	new names for the renaming of induction variables and for the
      	renaming of variables after a basic block has been copied.
      	(expand_scalar_variables): Same.
      	(graphite_rename_variables): Renamed rename_variables.
      	(move_phi_nodes): Removed.
      	(get_false_edge_from_guard_bb): New.
      	(build_iv_mapping): Do not insert the induction variable of a
      	loop in the renaming iv map if the basic block does not belong
      	to that loop.
      	(register_old_new_names, graphite_copy_stmts_from_block,
      	copy_bb_and_scalar_dependences): New.
      	(translate_clast): Heavily reimplemented: copy basic blocks,
      	do not move them.  Finally, in call cleanup_tree_cfg in gloog.
      	At each translation step call graphite_verify ensuring the 
      	consistency of the SSA, loops and dominators information.
      	(collect_virtual_phis, find_vdef_for_var_in_bb,
      	find_vdef_for_var_1, find_vdef_for_var,
      	patch_phis_for_virtual_defs): Removed huge hack.
      	(mark_old_loops, remove_dead_loops, skip_phi_defs,
      	collect_scop_exit_phi_args, patch_scop_exit_phi_args,
      	gbb_can_be_ignored, scop_remove_ignoreable_gbbs, ): Removed.
      	(remove_sese_region, ifsese, if_region_entry, if_region_exit,
      	if_region_get_condition_block, if_region_set_false_region,
      	create_if_region_on_edge, move_sese_in_condition, bb_in_sese_p,
      	sese_find_uses_to_rename_use, sese_find_uses_to_rename_bb, 
      	sese_add_exit_phis_edge, sese_add_exit_phis_var,
      	rewrite_into_sese_closed_ssa): New.
      	(gloog): Remove dead code.  Early return if code cannot be
      	generated.  Call cleanup_tree_cfg once the scop has been code
      	generated.
      	(graphite_trans_scop_block, graphite_trans_loop_block): Do not 
      	block loops with less than two loops.
      	(graphite_apply_transformations): Remove the call to
      	scop_remove_ignoreable_gbbs.
      	(limit_scops): When build_scop_loop_nests fails, continue on next scop.
      	Fix open_scop.entry.
      	(graphite_transform_loops): Call recompute_all_dominators: force the
      	recomputation of correct CDI_DOMINATORS and CDI_POST_DOMINATORS.
      	Call initialize_original_copy_tables and free_original_copy_tables
      	to be able to copy basic blocks during code generation.
      	When build_scop_loop_nests fails, continue on next scop.
      	(value_clast): New union.
      	(clast_to_gcc_expression): Fix type cast warning.
      
      2008-12-11  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* gcc.dg/graphite/pr37928.c: New.
      	* gcc.dg/graphite/pr37883.c: New.
      	* gcc.dg/graphite/pr38073.c: New.
      	* gcc.dg/graphite/pr38125.c: New.
      	* gfortran.dg/graphite/pr38083.f90: New.
      	* gfortran.dg/graphite/pr37852.f90: New.
      	* gfortran.dg/graphite/pr37980.f90: New.
      	* gfortran.dg/graphite/id-2.f90: New.
      	* gfortran.dg/graphite/id-4.f90: New.
      
      	* gcc.dg/graphite/scop-18.c: Remove reduction, test for
      	the number of detected scops.  Copy exact same test for loop blocking...
      	* gcc.dg/graphite/block-1.c: Fix the number of expected loops
      	to be blocked as reductions are not handled.
      	* gcc.dg/graphite/block-4.c: ...here.  New.
      
      From-SVN: r142673
      Sebastian Pop committed
    • re PR tree-optimization/38464 (vect/costmodel/ppc/costmodel-slp-12.c fails to vectorize) · 564a6431
      	PR tree-optimization/38464
      	* gcc.dg/vect/costmodel/ppc/costmodel-slp-12.c: Check that three
      	loops are vectorized.
      
      From-SVN: r142672
      Ira Rosen committed
    • Daily bump. · ed2b3f01
      From-SVN: r142666
      GCC Administrator committed
  2. 10 Dec, 2008 15 commits
    • re PR tree-optimization/36792 (Revision 137631 causes many failures) · 24a3fbbe
      2008-12-10  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/36792
      	* tree-ssa-pre.c (compute_avail): Handle tcc_comparison like
      	tcc_binary.
      
      From-SVN: r142662
      Richard Guenther committed
    • re PR c++/35319 (ICE throwing fixed-point types) · 07523e7c
              PR c++/35319
              * mangle.c (write_builtin_type): Add mangling for decimal floating
              point and fixed point types.
              (write_type): Pass FIXED_POINT_TYPE along.
              * cp-demangle.c (cplus_demangle_type): Support fixed-point types.
              (d_print_comp, d_dump): Likewise.
      
      From-SVN: r142661
      Jason Merrill committed
    • re PR tree-optimization/36792 (Revision 137631 causes many failures) · 615cb001
      2008-12-10  Daniel Berlin  <dberlin@dberlin.org>
      
      	PR tree-optimization/36792
      	* tree-ssa-pre.c (compute_avail): Don't insert defs into maximal
      	set.
      
      From-SVN: r142659
      Daniel Berlin committed
    • re PR target/37033 (Revision 138733 breaks -g vs -g0 for PCH) · db89a3be
      gcc/ChangeLog:
      PR target/37033
      * dwarf2out.c (saved_do_cfi_asm): New.
      (dwarf2out_do_frame): Take it into account.
      (dwarf2out_d_cfi_asm): Likewise.  Set it when appropriate.
      libcpp/ChangeLog:
      PR target/37033
      * pch.c (cpp_valid_state): Improve message for poisoned symbols.
      Allow for differences in __GCC_HAVE_DWARF2_CFI_ASM.
      
      From-SVN: r142652
      Alexandre Oliva committed
    • re PR middle-end/38271 (Spurious / missing "... used uninitialized in this function" warning) · aee91ff0
      gcc/ChangeLog:
      PR middle-end/38271
      * tree-sra.c (sra_build_bf_assignment): Avoid warnings for
      variables initialized from SRAed bit fields.
      gcc/testsuite/ChangeLog:
      PR middle-end/38271
      * gcc.dg/torture/pr38271.c: New.
      
      From-SVN: r142651
      Alexandre Oliva committed
    • Martin Guy <martinwguy@yahoo.it> PR target/37668 · 7ce8451d
      Martin Guy <martinwguy@yahoo.it>
      PR target/37668
      * arm.c (arm_size_rtx_costs, case NEG): Don't fall through if the
      result will be in an FPU register.
      
      From-SVN: r142647
      Martin Guy committed
    • re PR tree-optimization/37416 (Failure to return number of loop iterations) · 7f51c86c
      	PR tree-optimization/37416
      	* gcc.dg/vect/pr36630.c: Expect 1 vectorized loop.
      
      From-SVN: r142643
      Ira Rosen committed
    • re PR target/37170 (gcc.dg/weak/weak-1.c) · 0462b9b5
      	PR target/37170
      	PR target/38448
      	* final.c (output_addr_const) <SYMBOL_REF>: Call assemble_external
      	on the associated SYMBOL_REF_DECL node, if any.
      
      From-SVN: r142640
      Eric Botcazou committed
    • 20020919-1.c: Correct target selector to alpha*-*-*. · 53f37b01
      	* gcc.dg/20020919-1.c: Correct target selector to alpha*-*-*.
      	* gcc.dg/pr31866.c: Ditto.
      	* gcc.dg/torture/type-generic-1.c: Add -mieee for alpha*-*-* targets.
      	* g++.dg/torture/type-generic-1.C: Ditto.
      	* gfortran.dg/boz_9.f90: Ditto.
      	* gfortran.dg/boz_14.f90: Ditto.
      	* gfortran.dg/init_flag_3.f90: Ditto.
      	* gfortran.dg/init_flag_4.f90: Ditto.
      	* gfortran.dg/init_flag_5.f90: Ditto.
      	* gfortran.dg/integer_exponentiation_1.f90: Ditto.
      	* gfortran.dg/integer_exponentiation_5.F90: Ditto.
      	* gfortran.dg/isnan_1.f90: Ditto.
      	* gfortran.dg/isnan_2.f90: Ditto.
      	* gfortran.dg/module_nan.f90: Ditto.
      	* gfortran.dg/nan_1.f90: Ditto.
      	* gfortran.dg/nan_2.f90: Ditto.
      	* gfortran.dg/nan_3.f90: Ditto.
      	* gfortran.dg/nan_4.f90: Ditto.
      	* gfortran.dg/namelist_42.f90: Ditto.
      	* gfortran.dg/namelist_43.f90: Ditto.
      	* gfortran.dg/nearest_1.f90: Ditto.
      	* gfortran.dg/nearest_2.f90: Ditto.
      	* gfortran.dg/nearest_3.f90: Ditto.
      	* gfortran.dg/pr37243.f: Ditto.
      	* gfortran.dg/real_const_3.f90: Ditto.
      	* gfortran.dg/transfer_simplify_2.f90: Ditto.
      	* gfortran.fortran-torture/execute/intrinsic_spacing.x: New file.
      
      	* gfortran.dg/default_format_denormal_1.f90: XFAIL on alpha.
      
      From-SVN: r142639
      Uros Bizjak committed
    • sync.md (sync_<optab>_12): Replace MIPS_SYNC_OP_12_NOT_NOP with MIPS_SYNC_OP_12_AND. · be3fbe53
      	* config/mips/sync.md (sync_<optab>_12): Replace
      	MIPS_SYNC_OP_12_NOT_NOP with MIPS_SYNC_OP_12_AND.
      	(sync_old_<optab>_12): Remove third paramater to
      	MIPS_SYNC_OLD_OP_12 macro, replace MIPS_SYNC_OLD_OP_12_NOT_NOP
      	with MIPS_SYNC_OLD_OP_12_AND.
      	(sync_new_<optab>_12): Replace MIPS_SYNC_NEW_OP_12_NOT_NOP
      	with MIPS_SYNC_NEW_OP_12_AND.
      	(sync_nand_12): Replace MIPS_SYNC_OP_12_NOT_NOT with
      	MIPS_SYNC_OP_12_XOR, reduce length attribute to 40.
      	(sync_old_nand_12): Remove third paramater to MIPS_SYNC_OLD_OP_12
      	macro, replace MIPS_SYNC_OLD_OP_12_NOT_NOT with
      	MIPS_SYNC_OLD_OP_12_XOR and reduce length attribute to 40.
      	(sync_new_nand_12): Replace MIPS_SYNC_NEW_OP_12_NOT_NOT with
      	MIPS_SYNC_NEW_OP_12_XOR.
      	* config/mips/mips.h (MIPS_SYNC_OP_12, MIPS_SYNC_OP_12_NOT_NOP,
      	MIPS_SYNC_OP_12_NOT_NOT,MIPS_SYNC_OLD_OP_12_NOT_NOP,
      	MIPS_SYNC_OLD_OP_12_NOT_NOT, MIPS_SYNC_NEW_OP_12,
      	MIPS_SYNC_NEW_OP_12_NOT_NOP, MIPS_SYNC_NEW_OP_12_NOT_NOT,
      	MIPS_SYNC_NAND, MIPS_SYNC_OLD_NAND, MIPS_SYNC_NEW_NAND): Rewritten
      	to implement new __sync_nand semantics.
      	(MIPS_SYNC_OLD_OP_12): Implement new __sync_nand semantics, and
      	remove third parameter.
      	(MIPS_SYNC_OLD_OP_12_NOT_NOP_REG,
      	MIPS_SYNC_OLD_OP_12_NOT_NOT_REG): Removed.
      	(MIPS_SYNC_OP_12_NOT_NOP): Renamed to MIPS_SYNC_OP_12_AND.
      	(MIPS_SYNC_OP_12_NOT_NOT): Renamed to MIPS_SYNC_OP_12_XOR.
      	(MIPS_SYNC_OLD_OP_12_NOT_NOP): Renamed to MIPS_SYNC_OLD_OP_12_AND.
      	(MIPS_SYNC_OLD_OP_12_NOT_NOT): Renamed to MIPS_SYNC_OLD_OP_12_XOR.
      	(MIPS_SYNC_NEW_OP_12_NOT_NOP): Renamed to MIPS_SYNC_NEW_OP_12_AND.
      	(MIPS_SYNC_NEW_OP_12_NOT_NOT): Renamed to MIPS_SYNC_NEW_OP_12_XOR
      
      From-SVN: r142638
      David Daney committed
    • graphite.c (graphite_transform_loops): Always call find_transform () in ENABLE_CHECKING. · c34a77fd
      2008-12-09  Tobias Grosser  <grosser@fim.uni-passau.de>
      
      	* graphite.c (graphite_transform_loops): Always call find_transform ()
      	in ENABLE_CHECKING.  So we test these code paths, even if we do not
      	generate code.
      
      From-SVN: r142630
      Tobias Grosser committed
    • Fix typo in comment · 88376272
      From-SVN: r142629
      Mark Mitchell committed
    • re PR c++/37971 (Rejects default argument that is a template via access failure) · 248e1b22
      	PR c++/37971
      	* class.c (resolve_address_of_overloaded_function): Check
      	accessibility of member functions unless FLAGS indicates
      	otherwise.
      	* call.c (standard_conversion): Adjust flags passed to
      	instantiate_type.
      	(convert_default_arg): Do not perform access checks.
      	* cp-tree.h (tsubst_flags_t): Add tf_no_access_control.
      
      	PR c++/37971
      	* g++.dg/overload/defarg2.C: New test.
      	* g++.dg/overload/defarg3.C: Likewise.
      
      From-SVN: r142628
      Mark Mitchell committed
    • graphite.c (print_graphite_bb): Fix printing to file != dump_file. · 3725c2e3
      2008-12-09  Tobias Grosser  <grosser@fim.uni-passau.de>
      
      	* graphite.c (print_graphite_bb): Fix printing to file != dump_file.
      
      From-SVN: r142626
      Tobias Grosser committed
    • Daily bump. · 76d3363a
      From-SVN: r142623
      GCC Administrator committed
  3. 09 Dec, 2008 22 commits