1. 02 Aug, 2009 5 commits
  2. 01 Aug, 2009 9 commits
    • expr.c (store_constructor): Use promote_decl_mode. · cde0f3fd
      2009-04-17  Paolo Bonzini  <bonzini@gnu.org>
      
      	* expr.c (store_constructor): Use promote_decl_mode.  Remove
      	now write-only variable unsignedp.
      	(expand_expr_real_1): Use promote_decl_mode.
      	* expr.h (promote_function_mode, promote_decl_mode): New.
      	(promote_mode): Remove last argument.
      	* function.c (assign_temp): Drop last argument of promote_mode.
      	(assign_parm_find_data_types): Use promote_function_mode.
      	(assign_parm_setup_reg): Likewise.
      	(expand_function_end): Use promote_function_mode.
      	* calls.c (initialize_argument_information): Use promote_function_mode.
      	(precompute_arguments): Use promote_mode instead of checking if
      	only PROMOTE_FUNCTION_MODE is defined.
      	(expand_call): When making sibcall decisions, use promote_function_mode.
      	Below, remove an if for targetm.calls.promote_function_return and
      	and use promote_function_mode.
      	(emit_library_call_value_1): Use promote_function_mode, fix bug
      	where promote_mode was passed FOR_CALL == 0 for a return value in an
      	assertion.
      	* cfgexpand.c (expand_one_register_var): Use promote_decl_mode.
      	* explow.c (promote_function_mode, promote_decl_mode): New.
      	(promote_mode): Keep only the FOR_CALL == 0 case.
      	* combine.c (setup_incoming_promotion): Remove test of
      	promote_function_args.  Use promote_function_mode.
      	* stmt.c (expand_value_return): Use promote_decl_mode.
      	(expand_decl): Use promote_decl_mode.
      
      	* expr.c (store_constructor): Use promote_decl_mode.  Remove
      	now write-only variable unsignedp.
      	(expand_expr_real_1): Use promote_decl_mode.
      	* expr.h (promote_function_mode, promote_decl_mode): New.
      	(promote_mode): Remove last argument.
      	* function.c (assign_temp): Drop last argument of promote_mode.
      	(assign_parm_find_data_types): Use promote_function_mode.
      	(assign_parm_setup_reg): Likewise.
      	(expand_function_end): Use promote_function_mode.
      	* calls.c (initialize_argument_information): Use promote_function_mode.
      	(precompute_arguments): Use promote_mode instead of checking if
      	only PROMOTE_FUNCTION_MODE is defined.
      	(expand_call): When making sibcall decisions, use promote_function_mode.
      	Below, remove an if for targetm.calls.promote_function_return and
      	and use promote_function_mode.
      	(emit_library_call_value_1): Use promote_function_mode, fix bug
      	where promote_mode was passed FOR_CALL == 0 for a return value in an
      	assertion.
      	* cfgexpand.c (expand_one_register_var): Use promote_decl_mode.
      	* explow.c (promote_function_mode, promote_decl_mode): New.
      	(promote_mode): Keep only the FOR_CALL == 0 case.
      	* combine.c (setup_incoming_promotion): Remove test of
      	promote_function_args.  Use promote_function_mode.
      	* stmt.c (expand_value_return): Use promote_decl_mode.
      	(expand_decl): Use promote_decl_mode.
      
      	* explow.c (promote_function_mode): Just call the target hook.
      	* targhooks.c (default_promote_function_mode,
      	default_promote_function_mode_always_promote): New.
      	* targhooks.h (default_promote_function_mode,
      	default_promote_function_mode_always_promote): Declare.
      	* target.h (promote_function_args, promote_function_return): Remove.
      	(promote_function_mode): New.
      	* target-def.h (TARGET_PROMOTE_FUNCTION_ARGS,
      	TARGET_PROMOTE_FUNCTION_RETURN): Remove.
      	(TARGET_PROMOTE_FUNCTION_MODE): New.
      	(TARGET_CALLS): Adjust.
      	* system.h (TARGET_PROMOTE_FUNCTION_ARGS,
      	TARGET_PROMOTE_FUNCTION_RETURN, PROMOTE_FUNCTION_MODE): Poison.
      
      	* config/s390/s390.h (PROMOTE_FUNCTION_MODE): Move...
      	* config/s390/s390.c (s390_promote_function_mode): ... here,
      	with pointer handling.
      	(TARGET_PROMOTE_FUNCTION_MODE): Define.
      	(TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN): Remove.
      
      	* config/sparc/sparc.h (PROMOTE_FUNCTION_MODE): Move...
      	* config/sparc/sparc.c (sparc_promote_function_mode): ... here,
      	with pointer handling.
      	(TARGET_PROMOTE_FUNCTION_MODE): Define.
      	(TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN): Remove.
      	
      	* config/sh/sh-protos.h (sh_promote_function_mode): New.
      	* config/sh/sh.c (sh_promote_function_mode): New.
      	(TARGET_PROMOTE_FUNCTION_MODE): Define.
      	(TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN): Remove.
      
      	* config/cris/cris.h (PROMOTE_FUNCTION_MODE): Move...
      	* config/cris/cris.c (cris_promote_function_mode): ... here.
      	(TARGET_PROMOTE_FUNCTION_MODE): Define.
      	(TARGET_PROMOTE_FUNCTION_ARGS): Remove.
      
      	* config/mmix/mmix.h (PROMOTE_FUNCTION_MODE): Move...
      	* config/mmix/mmix.c (mmix_promote_function_mode): ... here.
      	(TARGET_PROMOTE_FUNCTION_MODE): Define.
      	(TARGET_PROMOTE_FUNCTION_ARGS): Remove.
      
      	* config/arm/arm.h (PROMOTE_FUNCTION_MODE): Move...
      	* config/arm/arm.c (arm_promote_function_mode): ... here, without complex
      	type handling.
      	(TARGET_PROMOTE_FUNCTION_MODE): Define.
      	(TARGET_PROMOTE_FUNCTION_ARGS, TARGET_PROMOTE_FUNCTION_RETURN): Remove.
      
      	* config/pa/pa.c (pa_promote_function_mode): New.
      	(TARGET_PROMOTE_FUNCTION_MODE): Define.
      	(TARGET_PROMOTE_FUNCTION_RETURN): Remove.
      
      	* config/alpha/alpha.c (TARGET_PROMOTE_FUNCTION_ARGS,
      	TARGET_PROMOTE_FUNCTION_RETURN): Remove.
      	(TARGET_PROMOTE_FUNCTION_MODE): Define equivalently.
      	* config/xtensa/xtensa.c: Likewise.
      	* config/stormy16/stormy16.c: Likewise.
      	* config/iq2000/iq2000.c: Likewise.
      	* config/rs6000/rs6000.c: Likewise.
      	* config/picochip/picochip.c: Likewise.
      	* config/arc/arc.c: Likewise.
      	* config/mcore/mcore.c: Likewise.
      	* config/score/score.c: Likewise.
      	* config/mips/mips.c: Likewise.
      	* config/bfin/bfin.c: Likewise.
      	* config/ia64/ia64.c: Likewise (disabled though).
      
      	* config/frv/frv.h: Remove pointless remark.
      
      	* doc/tm.texi (PROMOTE_FUNCTION_MODE,
      	TARGET_PROMOTE_FUNCTION_ARGS,
      	TARGET_PROMOTE_FUNCTION_RETURN): Consolidate into...
      	(TARGET_PROMOTE_FUNCTION_MODE): ... this.
      
      From-SVN: r150336
      Paolo Bonzini committed
    • Rename -fgraphite-force-parallel to -floop-parallelize-all. · 3cf0e270
      2009-08-01  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* doc/invoke.texi (-fgraphite-force-parallel): Renamed
      	-floop-parallelize-all.
      	* toplev.c (process_options): Rename flag_graphite_force_parallel to
      	flag_loop_parallelize_all.
      	* tree-ssa-loop.c (gate_graphite_transforms): Same.
      	* graphite.c (graphite_transform_loops): Same.
      	* common.opt: Same.
      	* graphite-poly.c (apply_poly_transforms): Same.
      
      	* gcc.dg/graphite/graphite_autopar/graphite_autopar.exp: Rename
      	-fgraphite-force-parallel to -floop-parallelize-all.
      
      From-SVN: r150334
      Sebastian Pop committed
    • re PR fortran/40011 (Problems with -fwhole-file) · 3af8d8cb
      2009-08-01  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/40011
      	* error.c : Add static flag 'warnings_not_errors'.
      	(gfc_error): If 'warnings_not_errors' is set, branch to code
      	from gfc_warning.
      	(gfc_clear_error): Reset 'warnings_not_errors'.
      	(gfc_errors_to_warnings): New function.
      	* options.c (gfc_post_options): If pedantic and flag_whole_file
      	change the latter to a value of 2.
      	* parse.c (parse_module): Add module namespace to gsymbol.
      	(resolve_all_program_units): New function.
      	(clean_up_modules): New function.
      	(translate_all_program_units): New function.
      	(gfc_parse_file): If whole_file, do not clean up module right
      	away and add derived types to namespace derived types. In
      	addition, call the three new functions above.
      	* resolve.c (not_in_recursive): New function.
      	(not_entry_self_reference): New function.
      	(resolve_global_procedure): Symbol must not be IFSRC_UNKNOWN,
      	procedure must not be in the course of being resolved and
      	must return false for the two new functions. Pack away the
      	current derived type list before calling gfc_resolve for the
      	gsymbol namespace.  It is unconditionally an error if the ranks
      	of the reference and ther procedure do not match. Convert
      	errors to warnings during call to gfc_procedure_use if not
      	pedantic or legacy.
      	(gfc_resolve): Set namespace resolved flag to -1 during
      	resolution and store current cs_base.
      	* trans-decl.c (gfc_get_symbol_decl): If whole_file compilation
      	substitute a use associated variable, if it is available in a
      	gsymbolnamespace.
      	(gfc_get_extern_function_decl): If the procedure is use assoc,
      	do not attempt to find it in a gsymbol because it could be an
      	interface. If the symbol exists in a module namespace, return
      	its backend_decl.
      	* trans-expr.c (gfc_trans_scalar_assign): If a derived type
      	assignment, set the rhs TYPE_MAIN_VARIANT to that of the rhs.
      	* trans-types.c (copy_dt_decls_ifequal): Add 'from_gsym' as a
      	boolean argument. Copy component backend_decls directly if the
      	components are derived types and from_gsym is true.
      	(gfc_get_derived_type): If whole_file copy the derived type from
      	the module if it is use associated, otherwise, if can be found
      	in another gsymbol namespace, use the existing derived type as
      	the TYPE_CANONICAL and build normally.
      	* gfortran.h : Add derived_types and resolved fields to
      	gfc_namespace. Include prototype for gfc_errors_to_warnings.
      
      2009-08-01  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/40011
      	* gfortran.dg/whole_file_7.f90: New test.
      	* gfortran.dg/whole_file_8.f90: New test.
      	* gfortran.dg/whole_file_9.f90: New test.
      	* gfortran.dg/whole_file_10.f90: New test.
      	* gfortran.dg/whole_file_11.f90: New test.
      	* gfortran.dg/whole_file_12.f90: New test.
      	* gfortran.dg/whole_file_13.f90: New test.
      	* gfortran.dg/whole_file_14.f90: New test.
      
      From-SVN: r150333
      Paul Thomas committed
    • update license · 4fcf0830
      From-SVN: r150328
      Jason Merrill committed
    • call.c (convert_class_to_reference): Binding an lvalue to an rvalue reference is bad. · e7f1930f
      	* call.c (convert_class_to_reference): Binding an lvalue to an
      	rvalue reference is bad.  If the user-defined conversion is bad,
      	set bad_p before merging conversions.
      	(maybe_handle_ref_bind): Don't push down bad_p.
      	(reference_binding): Binding an lvalue to an rvalue reference is bad.
      	(convert_like_real): Give a helpful error about binding lvalue
      	to rvalue reference.
      	(reference_related_p): No longer static.
      	* typeck.c (build_typed_address): New.
      	(build_static_cast_1): Add static_cast from lvalue to &&.
      	* cp-tree.h: Adjust.
      
      	* include/bits/move.h (forward): Implement as in N2835.
      	(move): Implement as in N2831.
      	* include/std/istream (rvalue stream operator>>): New.
      	* include/std/ostream (rvalue stream operator<<): New.
      
      Co-Authored-By: Douglas Gregor <doug.gregor@gmail.com>
      
      From-SVN: r150327
      Jason Merrill committed
    • forward_list.h (splice_after): Use forward. · 4c650853
      	* include/bits/forward_list.h (splice_after): Use forward.
      	(merge): Likewise.
      	* include/bits/stl_iterator.h (move_iterator::operator*): Use move.
      	(move_iterator::operator[]): Use move.
      	* include/bits/stl_list.h (insert): Use move.
      	* include/std/thread (_Callable constructor): Use forward.
      	* include/std/tuple: Don't specify explicit template args to move.
      
      From-SVN: r150326
      Jason Merrill committed
    • call.c (reference_binding): Rename lvalue_p to is_lvalue. · 9771799c
      	* call.c (reference_binding): Rename lvalue_p to is_lvalue.
      	Do direct binding of "rvalues" in memory to rvalue references.
      	* tree.c (lvalue_p_1): Can't be both non-addressable lvalue and
      	"rvalue" in memory.
      	* typeck.c (build_static_cast_1): Do direct binding of memory
      	"rvalues" to rvalue references.
      	* cvt.c (cp_fold_convert): New.
      	* cp-tree.h: Declare it.
      
      From-SVN: r150325
      Jason Merrill committed
    • typeck.c (build_address): Do fold away ADDR_EXPR of INDIRECT_REF. · d3e1e89e
      	* typeck.c (build_address): Do fold away ADDR_EXPR of INDIRECT_REF.
      	* tree.c (rvalue): Use cp_build_qualified_type, not TYPE_MAIN_VARIANT.
      
      From-SVN: r150324
      Jason Merrill committed
    • Daily bump. · 924d0c88
      From-SVN: r150323
      GCC Administrator committed
  3. 31 Jul, 2009 26 commits
    • re PR tree-optimization/40914 (ipa_analyze_call_uses fails to handle ptrmemfunc_vbit_in_delta) · 6f7b8b70
      	PR tree-optimization/40914
      	* ipa-prop.c (ipa_get_ptr_load_param): New argument use_delta,
      	if set, then check the delta field of the PMF record.
      	(ipa_get_stmt_member_ptr_load_param): Propagate new param use_delta.
      	(ipa_analyze_call_uses): Handle machines where the vbit for a PMF
      	call is stored in the delta.
      
      From-SVN: r150319
      Richard Earnshaw committed
    • mips.md (*clear_upper32_dext): New pattern. · 17320477
      	* config/mips/mips.md (*clear_upper32_dext): New pattern.
      
      testsuite/
      	* gcc.target/mips/ext-4.c: New test.
      
      From-SVN: r150316
      Adam Nemet committed
    • bsd.h (ASM_BYTE): New define. · e61c6562
      	* config/i386/bsd.h (ASM_BYTE): New define.
      	* config/i386/darwin.h (ASM_BYTE): Rename from ASM_BYTE_OP.
      	* config/i386/att.h (ASM_BYTE): New define. Use ASM_BYTE instead of
      	.byte.  Use fputs or putc instead of fprintf where appropriate.
      	* config/i386/i386-interix.h: Use ASM_BYTE instead of .byte.  Use
      	fputs or putc instead of fprintf where appropriate.
      	* config/i386/i386elf.h: Ditto.
      	* config/i386/sysv4.h: Ditto.
      	
      	* config/i386/i386.c (TARGET_ASM_BYTE_OP): New define.
      	* config/i386/i386.md (x86_sahf_1): Use ASM_BYTE instead of .byte.
      	(*tls_global_dynamic_64): Ditto.
      
      From-SVN: r150315
      Uros Bizjak committed
    • enable SH libgloss build · ea2002ba
      From-SVN: r150314
      Christian Bruel committed
    • Makefile.am: Don't set SECTION_FLAGS with @SECTION_FLAGS@. · 3ce1cf69
      	* Makefile.am: Don't set SECTION_FLAGS with @SECTION_FLAGS@.
      	Don't set IEEE_FLAGS with @IEEE_FLAGS@.
      	* Makefile.in: Regenerate.
      
      From-SVN: r150313
      Kaz Kojima committed
    • PR libstdc++/40912 (partial) · bd31ae23
      2009-07-31  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR libstdc++/40912 (partial)
      	* include/std/random: Disable the facility if <stdint.h> is not
      	available.
      
      From-SVN: r150312
      Paolo Carlini committed
    • Fix address cost for plus reg const_int. · 17eb4921
      2009-07-31  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
      	* config/arm/arm.c (arm_arm_address_cost): Fix typo. 
      	Remove dead code for MINUS.
      
      From-SVN: r150309
      Ramana Radhakrishnan committed
    • Tweak ABI & add moxie-uclinux target. · 23865616
      From-SVN: r150307
      Anthony Green committed
    • sh.md (UNSPECV_SP_SWITCH_B): New. · 20e19db4
      * config/sh/sh.md (UNSPECV_SP_SWITCH_B): New.
      (UNSPECV_SP_SWITCH_E): New.
      (sp_switch_1): Change to an unspec.
      (sp_switch_2): Change to an unspec.  Don't use post-inc when we
      replace $r15.
      * config/sh/sh.c (sh_expand_prologue): Use the constant pool to
      reference the new stack's address
      
      From-SVN: r150306
      DJ Delorie committed
    • pr33615.C: Fix pattern for lim. · e60d4149
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* g++.dg/tree-ssa/pr33615.C: Fix pattern for lim.
      
      From-SVN: r150305
      Sebastian Pop committed
    • Fix patterns in lim and dceloop testcases. · 6e62db84
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* gcc.dg/tree-ssa/20050314-1.c: Fix patterns for lim and dceloop.
      	* gcc.dg/tree-ssa/loop-32.c: Same.
      	* gcc.dg/tree-ssa/loop-33.c: Same.
      	* gcc.dg/tree-ssa/loop-34.c: Same.
      	* gcc.dg/tree-ssa/loop-35.c: Same.
      	* gcc.dg/tree-ssa/loop-7.c: Same.
      	* gcc.dg/tree-ssa/pr23109.c: Same.
      	* gcc.dg/tree-ssa/restrict-2.c: Same.
      	* gcc.dg/tree-ssa/restrict-3.c: Same.
      	* gcc.dg/tree-ssa/ssa-lim-1.c: Same.
      	* gcc.dg/tree-ssa/ssa-lim-2.c: Same.
      	* gcc.dg/tree-ssa/ssa-lim-3.c: Same.
      	* gcc.dg/tree-ssa/ssa-lim-6.c: Same.
      	* gcc.dg/tree-ssa/structopt-1.c: Same.
      	* gcc.dg/vect/dump-tree-dceloop-pr26359.c: Same.
      	* gfortran.dg/pr32921.f: Same.
      
      From-SVN: r150304
      Sebastian Pop committed
    • Add new testcases. · 99e0e30f
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* gcc.dg/graphite/graphite_autopar/force-parallel-1.c: New.
      	* gcc.dg/graphite/graphite_autopar/force-parallel-2.c: New.
      	* gcc.dg/graphite/graphite_autopar/force-parallel-3.c: New.
      	* gcc.dg/graphite/graphite_autopar/force-parallel-4.c: New.
      	* gcc.dg/graphite/graphite_autopar/force-parallel-5.c: New.
      	* gcc.dg/graphite/graphite_autopar/force-parallel-6.c: New.
      	* gcc.dg/graphite/graphite_autopar/force-parallel-7.c: New.
      	* gcc.dg/graphite/graphite_autopar/force-parallel-8.c: New.
      	* gcc.dg/graphite/graphite_autopar/force-parallel-9.c: New.
      	* gcc.dg/graphite/graphite_autopar/graphite_autopar.exp: New.
      	* gcc.dg/graphite/id-1.c: New.
      	* gcc.dg/graphite/id-10.c: New.
      	* gcc.dg/graphite/id-11.c: New.
      	* gcc.dg/graphite/id-12.c: New.
      	* gcc.dg/graphite/id-13.c: New.
      	* gcc.dg/graphite/id-14.c: New.
      	* gcc.dg/graphite/id-15.c: New.
      	* gcc.dg/graphite/id-2.c: New.
      	* gcc.dg/graphite/id-3.c: New.
      	* gcc.dg/graphite/id-4.c: New.
      	* gcc.dg/graphite/id-5.c: New.
      	* gcc.dg/graphite/id-6.c: New.
      	* gcc.dg/graphite/id-7.c: New.
      	* gcc.dg/graphite/id-8.c: New.
      	* gcc.dg/graphite/id-9.c: New.
      	* gcc.dg/graphite/interchange-0.c: New.
      	* gcc.dg/graphite/interchange-1.c: New.
      	* gcc.dg/graphite/interchange-2.c: New.
      	* gcc.dg/graphite/interchange-3.c: New.
      	* gcc.dg/graphite/interchange-4.c: New.
      	* gcc.dg/graphite/interchange-5.c: New.
      	* gcc.dg/graphite/interchange-6.c: New.
      	* gcc.dg/graphite/interchange-7.c: New.
      	* gcc.dg/graphite/interchange-8.c: New.
      	* gcc.dg/graphite/pr35356-1.c: New.
      	* gcc.dg/graphite/pr35356-2.c: New.
      	* gcc.dg/graphite/pr35356-3.c: New.
      	* gcc.dg/graphite/pr40157.c: New.
      	* gcc.dg/graphite/run-id-1.c: New.
      	* gcc.dg/graphite/scop-20.c: New.
      	* gcc.dg/graphite/scop-21.c: New.
      	* gfortran.dg/graphite/id-1.f90: New.
      	* gfortran.dg/graphite/id-10.f90: New.
      	* gfortran.dg/graphite/id-11.f: New.
      	* gfortran.dg/graphite/id-12.f: New.
      	* gfortran.dg/graphite/id-13.f: New.
      	* gfortran.dg/graphite/id-14.f: New.
      	* gfortran.dg/graphite/id-15.f: New.
      	* gfortran.dg/graphite/id-16.f: New.
      	* gfortran.dg/graphite/id-5.f: New.
      	* gfortran.dg/graphite/id-6.f: New.
      	* gfortran.dg/graphite/id-7.f: New.
      	* gfortran.dg/graphite/id-8.f: New.
      	* gfortran.dg/graphite/id-9.f: New.
      	* gfortran.dg/graphite/interchange-1.f: New.
      	* gfortran.dg/graphite/interchange-2.f: New.
      
      From-SVN: r150303
      Sebastian Pop committed
    • Modify the testsuite for the new Graphite. · 2ac57409
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* gcc.dg/graphite/graphite.exp: Implement an automatic selection of
      	flags based on the name of the testcase.
      	* gfortran.dg/graphite/graphite.exp: Same.
      
      	* gcc.dg/graphite/block-0.c: Adjusted.
      	* gcc.dg/graphite/block-1.c: Adjusted.
      	* gcc.dg/graphite/block-2.c: Adjusted.
      	* gcc.dg/graphite/block-3.c: Adjusted.
      	* gcc.dg/graphite/block-4.c: Adjusted.
      	* gcc.dg/graphite/block-5.c: Adjusted.
      	* gcc.dg/graphite/block-6.c: Adjusted.
      	* gcc.dg/graphite/pr37485.c: Adjusted.
      	* gcc.dg/graphite/pr37684.c: Adjusted.
      	* gcc.dg/graphite/pr37828.c: Adjusted.
      	* gcc.dg/graphite/pr37883.c: Adjusted.
      	* gcc.dg/graphite/pr37928.c: Adjusted.
      	* gcc.dg/graphite/pr37943.c: Adjusted.
      	* gcc.dg/graphite/pr38409.c: Adjusted.
      	* gcc.dg/graphite/pr38498.c: Adjusted.
      	* gcc.dg/graphite/pr38559.c: Adjusted.
      	* gcc.dg/graphite/pr39335.c: Adjusted.
      	* gcc.dg/graphite/pr39335_1.c: Adjusted.
      	* gcc.dg/graphite/scop-0.c: Adjusted.
      	* gcc.dg/graphite/scop-1.c: Adjusted.
      	* gcc.dg/graphite/scop-10.c: Adjusted.
      	* gcc.dg/graphite/scop-11.c: Adjusted.
      	* gcc.dg/graphite/scop-12.c: Adjusted.
      	* gcc.dg/graphite/scop-13.c: Adjusted.
      	* gcc.dg/graphite/scop-14.c: Adjusted.
      	* gcc.dg/graphite/scop-15.c: Adjusted.
      	* gcc.dg/graphite/scop-16.c: Adjusted.
      	* gcc.dg/graphite/scop-17.c: Adjusted.
      	* gcc.dg/graphite/scop-18.c: Adjusted.
      	* gcc.dg/graphite/scop-19.c: Adjusted.
      	* gcc.dg/graphite/scop-2.c: Adjusted.
      	* gcc.dg/graphite/scop-3.c: Adjusted.-
      	* gcc.dg/graphite/scop-4.c: Adjusted.
      	* gcc.dg/graphite/scop-5.c: Adjusted.
      	* gcc.dg/graphite/scop-6.c: Adjusted.
      	* gcc.dg/graphite/scop-7.c: Adjusted.
      	* gcc.dg/graphite/scop-8.c: Adjusted.
      	* gcc.dg/graphite/scop-9.c: Adjusted.
      	* gcc.dg/graphite/scop-matmult.c: Adjusted.
      	* gfortran.dg/graphite/block-1.f90: Adjusted.
      	* gfortran.dg/graphite/block-2.f: Adjusted.
      	* gfortran.dg/graphite/block-3.f90: Adjusted.
      	* gfortran.dg/graphite/block-4.f90: Adjusted.
      	* gfortran.dg/graphite/id-2.f90: Adjusted.
      	* gfortran.dg/graphite/id-3.f90: Adjusted.
      	* gfortran.dg/graphite/id-4.f90: Adjusted.
      	* gfortran.dg/graphite/pr37852.f90: Adjusted.
      	* gfortran.dg/graphite/pr37857.f90: Adjusted.
      	* gfortran.dg/graphite/pr37980.f90: Adjusted.
      	* gfortran.dg/graphite/pr38083.f90: Adjusted.
      	* gfortran.dg/graphite/pr38953.f90: Adjusted.
      	* gfortran.dg/graphite/scop-1.f: Adjusted.
      
      From-SVN: r150302
      Sebastian Pop committed
    • New implementation of Graphite. · 204b560f
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* Makefile.in (OBJS-common): Added dependence on graphite-blocking.o,
      	graphite-clast-to-gimple.o, graphite-dependences.o,
      	graphite-interchange.o, graphite-poly.o, graphite-ppl.o,
      	graphite-scop-detection.o, graphite-sese-to-poly.o, and sese.o.
      	(graphite-blocking.o,
      	graphite-clast-to-gimple.o, graphite-dependences.o,
      	graphite-interchange.o, graphite-poly.o, graphite-ppl.o,
      	graphite-scop-detection.o, graphite-sese-to-poly.o, and sese.o): New.
      	* cfgloop.c (alloc_loop): Set loop->can_be_parallel to false.
      	* cfgloop.h (struct loop): Add can_be_parallel field.
      	* common.opt (fgraphite-identity): Moved up.
      	(fgraphite-force-parallel): New flag.
      	* graphite.c: Rewrite.
      	* graphite.h: Rewrite.
      	* passes.c (init_optimization_passes): Schedule a pass of DCE and LIM
      	after Graphite.
      	* toplev.c (graphite_out_file): New file descriptor.
      	(graphite_in_file): New.
      	(process_options): flag_graphite_force_parallel cannot be used without
      	Graphite.
      	* tree-ssa-loop.c: Include toplev.h.
      	(gate_graphite_transforms): Enable flag_graphite for
      	flag_graphite_force_parallel.
      
      From-SVN: r150301
      Sebastian Pop committed
    • New Graphite files. · 2abae5f1
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* ChangeLog.graphite: New.
      	* graphite-blocking.c: New.
      	* graphite-clast-to-gimple.c: New.
      	* graphite-clast-to-gimple.h: New.
      	* graphite-dependences.c: New.
      	* graphite-dependences.h: New.
      	* graphite-interchange.c: New.
      	* graphite-poly.c: New.
      	* graphite-poly.h: New.
      	* graphite-ppl.c: New.
      	* graphite-ppl.h: New.
      	* graphite-scop-detection.c: New.
      	* graphite-scop-detection.h: New.
      	* graphite-sese-to-poly.c: New.
      	* graphite-sese-to-poly.h: New.
      	* sese.c: New.
      	* sese.h: New.
      
      From-SVN: r150300
      Sebastian Pop committed
    • Implement evolution_function_right_is_integer_cst. · e7c705bb
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-chrec.c (evolution_function_right_is_integer_cst): New.
      	* tree-chrec.h (evolution_function_right_is_integer_cst): Declared.
      
      From-SVN: r150299
      Sebastian Pop committed
    • Make scev_is_linear_expression return false if the evolution is not affine multivariate. · 765deab7
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-chrec.c (operator_is_linear): Handle BIT_NOT_EXPR.
      	(scev_is_linear_expression): Return false if the evolution is not
      	affine multivariate.
      
      From-SVN: r150298
      Sebastian Pop committed
    • Add a new driver to data reference analysis. · ed91d661
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-data-ref.c (graphite_find_data_references_in_stmt): New.
      	* tree-data-ref.h (graphite_find_data_references_in_stmt): Declared.
      
      From-SVN: r150297
      Sebastian Pop committed
    • tree-data-ref.c (debug_data_references): New. · a37d995a
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-data-ref.c (debug_data_references): New.
      	(debug_data_reference): New.
      	* tree-data-ref.h (debug_data_references): Declared.
      	(debug_data_reference): Declared.
      
      From-SVN: r150296
      Sebastian Pop committed
    • Remove unused function and field in data_reference. · ae5b9860
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-data-ref.c (stmt_simple_memref_p: Removed.
      	* tree-data-ref.h (scop_p): Removed.
      	(struct data_reference): Remove field scop.
      	(DR_SCOP): Removed.
      	(stmt_simple_memref_p): Removed.
      
      From-SVN: r150295
      Sebastian Pop committed
    • Fix typo in previous patch. · da24f9d9
      From-SVN: r150294
      DJ Delorie committed
    • Leave the loop_latch basic block empty. · 8e74b397
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* cfgloop.h (create_empty_loop_on_edge): Pass an extra argument.
      	* cfgloopmanip.c (create_empty_loop_on_edge): Leave the loop_latch
      	basic block empty.
      
      From-SVN: r150293
      Sebastian Pop committed
    • Document -fgraphite-force-parallel. · 109e0d57
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* doc/invoke.texi (-fgraphite-force-parallel): Documented.
      
      From-SVN: r150292
      Sebastian Pop committed
    • Document -fgraphite-identity. · 66a7961b
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* doc/invoke.texi (-fgraphite-identity): Documented.
      
      From-SVN: r150291
      Sebastian Pop committed
    • Return unknow from scev instantiation if the result is not above instantiate_below. · 52bdd655
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-scalar-evolution.c: Fix comment.
      	(instantiate_scev_1): Return unknow from scev instantiation if the
      	result is not above instantiate_below.
      
      From-SVN: r150290
      Sebastian Pop committed
    • tree-scalar-evolution.c (compute_overall_effect_of_inner_loop): Not static anymore. · 42e6eec5
      2009-07-30  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* tree-scalar-evolution.c (compute_overall_effect_of_inner_loop): Not
      	static anymore.  Instantiate the symbols that may have been introduced
      	by chrec_apply.
      	* tree-scalar-evolution.h (compute_overall_effect_of_inner_loop):
      	Declared.
      
      From-SVN: r150289
      Sebastian Pop committed