Jakub Jelinek [Wed, 25 Nov 2009 20:18:37 +0000 (21:18 +0100)]
print-rtl.c (print_rtx): When printing newline, append print_rtx_head and indentation after the newline.
* print-rtl.c (print_rtx): When printing newline, append
print_rtx_head and indentation after the newline.
From-SVN: r154651
Eric Botcazou [Wed, 25 Nov 2009 19:55:11 +0000 (19:55 +0000)]
re PR target/10127 (-fstack-check let's program crash)
PR target/10127
PR ada/20548
PR middle-end/42004
* dwarf2out.c (dwarf2out_args_size_adjust): Rename to...
(dwarf2out_stack_adjust): ...this. Do not adjust the arg size for
ACCUMULATE_OUTGOING_ARGS targets. Rename former version to...
(dwarf2out_notice_stack_adjust): ...this. Adjust for above renaming.
(dwarf2out_frame_debug_expr): Revert previous change and adjust for
above renaming.
(dwarf2out_frame_debug): Add ??? comment. Adjust for above renaming.
From-SVN: r154650
Uros Bizjak [Wed, 25 Nov 2009 19:32:37 +0000 (20:32 +0100)]
predicates.md (emms_operation): New predicate.
* config/i386/predicates.md (emms_operation): New predicate.
(vzeroupper_operation): Ditto.
(vzeroall_operation): Improve pattern recognition.
* config/i386/sse.md (avx_vzeroupper_rex64): Remove insn pattern.
(avx_vzeroupper): Change insn pattern to expander.
(*avx_vzeroupper): New insn pattern. Use vzeroupper_operation
predicate.
(*avx_vzeroall): Remove operands 1 and 2.
* config/i386/mmx.md (mmx_emms): Change insn pattern to expander.
(mmx_femms): Ditto.
(*mmx_emms): New insn pattern. Use emms_operation predicate.
(*mmx_femms): Ditto.
* config/i386/i386.c (enum ix86_builtins)
<IX86_BUILTIN_VZEROUPPER_REX64>: Remove.
(struct builtin_description) <CODE_FOR_avx_vzeroupper_rex64>:
Remove initailization.
<CODE_FOR_avx_vzeroupper>: Unconditionally initialize here.
From-SVN: r154649
Paul Brook [Wed, 25 Nov 2009 13:58:51 +0000 (13:58 +0000)]
arm.md (consttable_4): Handle (high ...).
2009-11-25 Paul Brook <paul@codesourcery.com>
gcc/
* config/arm/arm.md (consttable_4): Handle (high ...).
From-SVN: r154648
Robert Nelson [Wed, 25 Nov 2009 11:23:07 +0000 (11:23 +0000)]
arm.h (enum vfp_reg_type): Add VFP_NONE.
2009-11-25 Robert Nelson <robert.nelson@digikey.com>
Richard Earnshaw <rearnsha@arm.com>
* arm.h (enum vfp_reg_type): Add VFP_NONE.
* arm.c (all_fpus): Use it for floating point units that aren't based
on the VFP architecture.
(aapcs_vfp_is_call_or_return_candidate): Make base_mode a pointer to
enum machine_mode.
Co-Authored-By: Richard Earnshaw <rearnsha@arm.com>
From-SVN: r154647
Eric Botcazou [Wed, 25 Nov 2009 11:01:26 +0000 (11:01 +0000)]
re PR ada/42170 (Ada testsuite regressions caused by 8MB stack limit)
PR ada/42170
* ada/acats/run_acats: Bump stack limit to 16MB.
Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
From-SVN: r154646
H.J. Lu [Wed, 25 Nov 2009 10:55:54 +0000 (10:55 +0000)]
Remove trailing white spaces.
2009-11-25 H.J. Lu <hongjiu.lu@intel.com>
* alias.c: Remove trailing white spaces.
* alloc-pool.c: Likewise.
* alloc-pool.h: Likewise.
* attribs.c: Likewise.
* auto-inc-dec.c: Likewise.
* basic-block.h: Likewise.
* bb-reorder.c: Likewise.
* bt-load.c: Likewise.
* builtins.c: Likewise.
* builtins.def: Likewise.
* c-common.c: Likewise.
* c-common.h: Likewise.
* c-cppbuiltin.c: Likewise.
* c-decl.c: Likewise.
* c-format.c: Likewise.
* c-lex.c: Likewise.
* c-omp.c: Likewise.
* c-opts.c: Likewise.
* c-parser.c: Likewise.
* c-pretty-print.c: Likewise.
* c-tree.h: Likewise.
* c-typeck.c: Likewise.
* caller-save.c: Likewise.
* calls.c: Likewise.
* cfg.c: Likewise.
* cfganal.c: Likewise.
* cfgexpand.c: Likewise.
* cfghooks.c: Likewise.
* cfghooks.h: Likewise.
* cfglayout.c: Likewise.
* cfgloop.c: Likewise.
* cfgloop.h: Likewise.
* cfgloopmanip.c: Likewise.
* cfgrtl.c: Likewise.
* cgraph.c: Likewise.
* cgraph.h: Likewise.
* cgraphbuild.c: Likewise.
* cgraphunit.c: Likewise.
* cif-code.def: Likewise.
* collect2.c: Likewise.
* combine.c: Likewise.
* convert.c: Likewise.
* coverage.c: Likewise.
* crtstuff.c: Likewise.
* cse.c: Likewise.
* cselib.c: Likewise.
* dbgcnt.c: Likewise.
* dbgcnt.def: Likewise.
* dbgcnt.h: Likewise.
* dbxout.c: Likewise.
* dce.c: Likewise.
* ddg.c: Likewise.
* ddg.h: Likewise.
* defaults.h: Likewise.
* df-byte-scan.c: Likewise.
* df-core.c: Likewise.
* df-problems.c: Likewise.
* df-scan.c: Likewise.
* df.h: Likewise.
* dfp.c: Likewise.
* diagnostic.c: Likewise.
* diagnostic.h: Likewise.
* dominance.c: Likewise.
* domwalk.c: Likewise.
* double-int.c: Likewise.
* double-int.h: Likewise.
* dse.c: Likewise.
* dwarf2asm.c: Likewise.
* dwarf2asm.h: Likewise.
* dwarf2out.c: Likewise.
* ebitmap.c: Likewise.
* ebitmap.h: Likewise.
* emit-rtl.c: Likewise.
* et-forest.c: Likewise.
* except.c: Likewise.
* except.h: Likewise.
* expmed.c: Likewise.
* expr.c: Likewise.
* expr.h: Likewise.
* final.c: Likewise.
* flags.h: Likewise.
* fold-const.c: Likewise.
* function.c: Likewise.
* function.h: Likewise.
* fwprop.c: Likewise.
* gcc.c: Likewise.
* gcov-dump.c: Likewise.
* gcov-io.c: Likewise.
* gcov-io.h: Likewise.
* gcov.c: Likewise.
* gcse.c: Likewise.
* genattr.c: Likewise.
* genattrtab.c: Likewise.
* genautomata.c: Likewise.
* genchecksum.c: Likewise.
* genconfig.c: Likewise.
* genflags.c: Likewise.
* gengtype-parse.c: Likewise.
* gengtype.c: Likewise.
* gengtype.h: Likewise.
* genmddeps.c: Likewise.
* genmodes.c: Likewise.
* genopinit.c: Likewise.
* genpreds.c: Likewise.
* gensupport.c: Likewise.
* ggc-common.c: Likewise.
* ggc-page.c: Likewise.
* ggc-zone.c: Likewise.
* ggc.h: Likewise.
* gimple-iterator.c: Likewise.
* gimple-low.c: Likewise.
* gimple-pretty-print.c: Likewise.
* gimple.c: Likewise.
* gimple.def: Likewise.
* gimple.h: Likewise.
* gimplify.c: Likewise.
* graphds.c: Likewise.
* graphite-clast-to-gimple.c: Likewise.
* gthr-nks.h: Likewise.
* gthr-posix.c: Likewise.
* gthr-posix.h: Likewise.
* gthr-posix95.h: Likewise.
* gthr-single.h: Likewise.
* gthr-tpf.h: Likewise.
* gthr-vxworks.h: Likewise.
* gthr.h: Likewise.
* haifa-sched.c: Likewise.
* hard-reg-set.h: Likewise.
* hooks.c: Likewise.
* hooks.h: Likewise.
* hosthooks.h: Likewise.
* hwint.h: Likewise.
* ifcvt.c: Likewise.
* incpath.c: Likewise.
* init-regs.c: Likewise.
* integrate.c: Likewise.
* ipa-cp.c: Likewise.
* ipa-inline.c: Likewise.
* ipa-prop.c: Likewise.
* ipa-pure-const.c: Likewise.
* ipa-reference.c: Likewise.
* ipa-struct-reorg.c: Likewise.
* ipa-struct-reorg.h: Likewise.
* ipa-type-escape.c: Likewise.
* ipa-type-escape.h: Likewise.
* ipa-utils.c: Likewise.
* ipa-utils.h: Likewise.
* ipa.c: Likewise.
* ira-build.c: Likewise.
* ira-color.c: Likewise.
* ira-conflicts.c: Likewise.
* ira-costs.c: Likewise.
* ira-emit.c: Likewise.
* ira-int.h: Likewise.
* ira-lives.c: Likewise.
* ira.c: Likewise.
* jump.c: Likewise.
* lambda-code.c: Likewise.
* lambda-mat.c: Likewise.
* lambda-trans.c: Likewise.
* lambda.h: Likewise.
* langhooks.c: Likewise.
* lcm.c: Likewise.
* libgcov.c: Likewise.
* lists.c: Likewise.
* loop-doloop.c: Likewise.
* loop-init.c: Likewise.
* loop-invariant.c: Likewise.
* loop-iv.c: Likewise.
* loop-unroll.c: Likewise.
* lower-subreg.c: Likewise.
* lto-cgraph.c: Likewise.
* lto-compress.c: Likewise.
* lto-opts.c: Likewise.
* lto-section-in.c: Likewise.
* lto-section-out.c: Likewise.
* lto-streamer-in.c: Likewise.
* lto-streamer-out.c: Likewise.
* lto-streamer.c: Likewise.
* lto-streamer.h: Likewise.
* lto-symtab.c: Likewise.
* lto-wpa-fixup.c: Likewise.
* matrix-reorg.c: Likewise.
* mcf.c: Likewise.
* mode-switching.c: Likewise.
* modulo-sched.c: Likewise.
* omega.c: Likewise.
* omega.h: Likewise.
* omp-low.c: Likewise.
* optabs.c: Likewise.
* optabs.h: Likewise.
* opts-common.c: Likewise.
* opts.c: Likewise.
* params.def: Likewise.
* params.h: Likewise.
* passes.c: Likewise.
* plugin.c: Likewise.
* postreload-gcse.c: Likewise.
* postreload.c: Likewise.
* predict.c: Likewise.
* predict.def: Likewise.
* pretty-print.c: Likewise.
* pretty-print.h: Likewise.
* print-rtl.c: Likewise.
* print-tree.c: Likewise.
* profile.c: Likewise.
* read-rtl.c: Likewise.
* real.c: Likewise.
* recog.c: Likewise.
* reg-stack.c: Likewise.
* regcprop.c: Likewise.
* reginfo.c: Likewise.
* regmove.c: Likewise.
* regrename.c: Likewise.
* regs.h: Likewise.
* regstat.c: Likewise.
* reload.c: Likewise.
* reload1.c: Likewise.
* resource.c: Likewise.
* rtl.c: Likewise.
* rtl.def: Likewise.
* rtl.h: Likewise.
* rtlanal.c: Likewise.
* sbitmap.c: Likewise.
* sched-deps.c: Likewise.
* sched-ebb.c: Likewise.
* sched-int.h: Likewise.
* sched-rgn.c: Likewise.
* sched-vis.c: Likewise.
* sdbout.c: Likewise.
* sel-sched-dump.c: Likewise.
* sel-sched-dump.h: Likewise.
* sel-sched-ir.c: Likewise.
* sel-sched-ir.h: Likewise.
* sel-sched.c: Likewise.
* sel-sched.h: Likewise.
* sese.c: Likewise.
* sese.h: Likewise.
* simplify-rtx.c: Likewise.
* stack-ptr-mod.c: Likewise.
* stmt.c: Likewise.
* stor-layout.c: Likewise.
* store-motion.c: Likewise.
* stringpool.c: Likewise.
* stub-objc.c: Likewise.
* sync-builtins.def: Likewise.
* target-def.h: Likewise.
* target.h: Likewise.
* targhooks.c: Likewise.
* targhooks.h: Likewise.
* timevar.c: Likewise.
* tlink.c: Likewise.
* toplev.c: Likewise.
* toplev.h: Likewise.
* tracer.c: Likewise.
* tree-affine.c: Likewise.
* tree-affine.h: Likewise.
* tree-browser.def: Likewise.
* tree-call-cdce.c: Likewise.
* tree-cfg.c: Likewise.
* tree-cfgcleanup.c: Likewise.
* tree-chrec.c: Likewise.
* tree-chrec.h: Likewise.
* tree-complex.c: Likewise.
* tree-data-ref.c: Likewise.
* tree-data-ref.h: Likewise.
* tree-dfa.c: Likewise.
* tree-dump.c: Likewise.
* tree-dump.h: Likewise.
* tree-eh.c: Likewise.
* tree-flow-inline.h: Likewise.
* tree-flow.h: Likewise.
* tree-if-conv.c: Likewise.
* tree-inline.c: Likewise.
* tree-into-ssa.c: Likewise.
* tree-loop-distribution.c: Likewise.
* tree-loop-linear.c: Likewise.
* tree-mudflap.c: Likewise.
* tree-nested.c: Likewise.
* tree-nomudflap.c: Likewise.
* tree-nrv.c: Likewise.
* tree-object-size.c: Likewise.
* tree-optimize.c: Likewise.
* tree-outof-ssa.c: Likewise.
* tree-parloops.c: Likewise.
* tree-pass.h: Likewise.
* tree-phinodes.c: Likewise.
* tree-predcom.c: Likewise.
* tree-pretty-print.c: Likewise.
* tree-profile.c: Likewise.
* tree-scalar-evolution.c: Likewise.
* tree-ssa-address.c: Likewise.
* tree-ssa-alias.c: Likewise.
* tree-ssa-ccp.c: Likewise.
* tree-ssa-coalesce.c: Likewise.
* tree-ssa-copy.c: Likewise.
* tree-ssa-copyrename.c: Likewise.
* tree-ssa-dce.c: Likewise.
* tree-ssa-dom.c: Likewise.
* tree-ssa-dse.c: Likewise.
* tree-ssa-forwprop.c: Likewise.
* tree-ssa-ifcombine.c: Likewise.
* tree-ssa-live.c: Likewise.
* tree-ssa-live.h: Likewise.
* tree-ssa-loop-ch.c: Likewise.
* tree-ssa-loop-im.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-loop-manip.c: Likewise.
* tree-ssa-loop-niter.c: Likewise.
* tree-ssa-loop-prefetch.c: Likewise.
* tree-ssa-loop-unswitch.c: Likewise.
* tree-ssa-loop.c: Likewise.
* tree-ssa-math-opts.c: Likewise.
* tree-ssa-operands.c: Likewise.
* tree-ssa-operands.h: Likewise.
* tree-ssa-phiopt.c: Likewise.
* tree-ssa-phiprop.c: Likewise.
* tree-ssa-pre.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* tree-ssa-sccvn.c: Likewise.
* tree-ssa-sink.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-ssa-ter.c: Likewise.
* tree-ssa-threadedge.c: Likewise.
* tree-ssa-threadupdate.c: Likewise.
* tree-ssa-uncprop.c: Likewise.
* tree-ssa.c: Likewise.
* tree-ssanames.c: Likewise.
* tree-switch-conversion.c: Likewise.
* tree-tailcall.c: Likewise.
* tree-vect-data-refs.c: Likewise.
* tree-vect-generic.c: Likewise.
* tree-vect-loop-manip.c: Likewise.
* tree-vect-loop.c: Likewise.
* tree-vect-patterns.c: Likewise.
* tree-vect-slp.c: Likewise.
* tree-vect-stmts.c: Likewise.
* tree-vectorizer.c: Likewise.
* tree-vectorizer.h: Likewise.
* tree-vrp.c: Likewise.
* tree.c: Likewise.
* tree.def: Likewise.
* tree.h: Likewise.
* treestruct.def: Likewise.
* unwind-compat.c: Likewise.
* unwind-dw2-fde-glibc.c: Likewise.
* unwind-dw2.c: Likewise.
* value-prof.c: Likewise.
* value-prof.h: Likewise.
* var-tracking.c: Likewise.
* varasm.c: Likewise.
* varpool.c: Likewise.
* vec.c: Likewise.
* vec.h: Likewise.
* vmsdbgout.c: Likewise.
* web.c: Likewise.
* xcoffout.c: Likewise.
From-SVN: r154645
Richard Earnshaw [Wed, 25 Nov 2009 10:33:40 +0000 (10:33 +0000)]
pr40835.c: Require a thumb1 target, do not force -march=armv5e.
* gcc.target/arm/pr40835.c: Require a thumb1 target, do not force
-march=armv5e.
From-SVN: r154644
Sebastian Pop [Wed, 25 Nov 2009 05:36:57 +0000 (05:36 +0000)]
Empty patch as it is a revert patch already applied.
From-SVN: r154643
Sebastian Pop [Wed, 25 Nov 2009 05:36:29 +0000 (05:36 +0000)]
Empty patch as it should not be applied to trunk.
From-SVN: r154642
Sebastian Pop [Wed, 25 Nov 2009 05:35:58 +0000 (05:35 +0000)]
re PR middle-end/40281 (-fprefetch-loop-arrays: ICE: in initialize_matrix_A, at tree-data-ref.c:1887)
2009-11-18 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/40281
* testsuite/gcc.dg/graphite/pr40281.c: New.
* tree-scalar-evolution.c (instantiate_scev_poly): Base and stride
evolutions should not variate in inner loops.
From-SVN: r154641
Sebastian Pop [Wed, 25 Nov 2009 05:32:03 +0000 (05:32 +0000)]
re PR middle-end/42050 (ice in graphite-clast-to-gimple.c:165)
2009-11-18 Sebastian Pop <sebastian.pop@amd.com>
PR middle-end/42050
* testsuite/gfortran.dg/graphite/pr42050.f90: New.
From-SVN: r154640
Sebastian Pop [Wed, 25 Nov 2009 05:31:36 +0000 (05:31 +0000)]
graphite-interchange.c (memory_strides_in_loop_depth): New.
2009-11-18 Sebastian Pop <sebastian.pop@amd.com>
* graphite-interchange.c (memory_strides_in_loop_depth): New.
(pbb_interchange_profitable_p): Call memory_strides_in_loop_depth.
From-SVN: r154639
Sebastian Pop [Wed, 25 Nov 2009 05:31:07 +0000 (05:31 +0000)]
graphite-blocking.c (scop_do_block): New.
2009-11-18 Sebastian Pop <sebastian.pop@amd.com>
* graphite-blocking.c (scop_do_block): New.
* graphite-poly.c (apply_poly_transforms): Call scop_do_block.
* graphite-poly.h (scop_do_block): Declared.
From-SVN: r154638
Sebastian Pop [Wed, 25 Nov 2009 05:30:35 +0000 (05:30 +0000)]
graphite-blocking.c (pbb_strip_mine_profitable_p): The parameter depth is the loop nesting depth in the LST.
2009-11-18 Sebastian Pop <sebastian.pop@amd.com>
* graphite-blocking.c (pbb_strip_mine_profitable_p): The parameter
depth is the loop nesting depth in the LST. Call psct_dynamic_dim
to transform depth into the time_depth before calling
pbb_number_of_iterations_at_time.
(lst_do_strip_mine): Use a scalar variable instead of recomputing
lst_depth.
From-SVN: r154637
Sebastian Pop [Wed, 25 Nov 2009 05:30:05 +0000 (05:30 +0000)]
Empty patch, revert of another patch in the Graphite branch.
From-SVN: r154636
Sebastian Pop [Wed, 25 Nov 2009 05:29:37 +0000 (05:29 +0000)]
configure.ac: Check for version 0.15.5 or later revision of CLooG.
2009-11-21 Sebastian Pop <sebpop@gmail.com>
* configure.ac: Check for version 0.15.5 or later revision of CLooG.
* configure: Regenerated.
From-SVN: r154635
Konrad Trifunovic [Wed, 25 Nov 2009 05:29:01 +0000 (06:29 +0100)]
graphite-interchange.c (build_partial_difference): New.
2009-11-04 Konrad Trifunovic <konrad.trifunovic@inria.fr>
* graphite-interchange.c (build_partial_difference): New.
(memory_stride_in_loop): Refactored the computation of
equality constraints into build_partial_difference function.
Added support for debugging stride computations.
From-SVN: r154634
Sebastian Pop [Wed, 25 Nov 2009 05:28:32 +0000 (05:28 +0000)]
graphite-clast-to-gimple.c (gloog): Free if_region, if_region->true_region, and if_region->region.
2009-11-03 Sebastian Pop <sebastian.pop@amd.com>
* graphite-clast-to-gimple.c (gloog): Free if_region,
if_region->true_region, and if_region->region.
* sese.c (if_region_set_false_region): Free if_region->false_region.
(create_if_region_on_edge): Do not use GGC_NEW.
(move_sese_in_condition): Remove useless initialization.
From-SVN: r154633
Sebastian Pop [Wed, 25 Nov 2009 05:28:05 +0000 (05:28 +0000)]
graphite-interchange.c (lst_perfect_nestify): Pass 3 parameters for the loops created by the loop distribution.
2009-11-03 Sebastian Pop <sebastian.pop@amd.com>
* graphite-interchange.c (lst_perfect_nestify): Pass 3 parameters
for the loops created by the loop distribution. Do not modify the
input LSTs.
(lst_try_interchange_loops): Same. Use a temporary LST for the
transformed schedule. Call lst_update_scattering before data
dependence analysis.
(lst_try_interchange): Pass an extra parameter INDEX.
(lst_do_interchange_1): New.
(lst_do_interchange): Call lst_do_interchange_1.
(scop_do_interchange): Call lst_update_scattering.
* graphite-poly.c (apply_poly_transforms): Do not call
lst_update_scattering.
* graphite-poly.h (lst_pred): New.
(lst_succ): New.
(lst_find_first_pbb): Return NULL when not found.
(lst_empty_p): New.
(lst_insert_in_sequence): Allow LST1 to be NULL.
(lst_replace): New.
(lst_substitute_3): New.
* gcc.dg/graphite/interchange-1.c: XFail.
* gcc.dg/graphite/interchange-8.c: XFail.
* gcc.dg/graphite/interchange-11.c: XFail.
From-SVN: r154632
Sebastian Pop [Wed, 25 Nov 2009 05:27:36 +0000 (05:27 +0000)]
graphite-interchange.c (lst_perfectly_nested_p): New.
2009-10-30 Sebastian Pop <sebastian.pop@amd.com>
* graphite-interchange.c (lst_perfectly_nested_p): New.
(lst_perfect_nestify): New.
(lst_try_interchange_loops): Call store_lst_schedule,
lst_perfectly_nested_p, lst_perfect_nestify and restore_lst_schedule.
(scop_do_interchange): Avoid redundant legality test.
Call lst_do_interchange on a copy of SCOP_TRANSFORMED_SCHEDULE.
* graphite-poly.c (apply_poly_transforms): Call lst_update_scattering.
* graphite-poly.h (psct_static_dim): New.
(lst_dewey_number_at_depth): New.
(lst_find_pbb): Restructured.
(lst_find_first_pbb): Restructured.
(lst_find_last_pbb): New.
(lst_contains_p): New.
(lst_contains_pbb): New.
(lst_create_nest): New.
(lst_remove_from_sequence): New.
(pbb_update_scattering): New.
(lst_update_scattering_under): New.
(lst_update_scattering_seq): New.
(lst_update_scattering): New.
(lst_insert_in_sequence): New.
(lst_distribute_lst): New.
(lst_remove_all_before_including_pbb): New.
(lst_remove_all_before_excluding_pbb): New.
From-SVN: r154631
Sebastian Pop [Wed, 25 Nov 2009 05:27:08 +0000 (05:27 +0000)]
tree-ssa-loop-niter.c (finite_loop_p): Do not call twice get_loop_exit_edges.
2009-10-30 Sebastian Pop <sebastian.pop@amd.com>
* tree-ssa-loop-niter.c (finite_loop_p): Do not call twice
get_loop_exit_edges.
From-SVN: r154630
Sebastian Pop [Wed, 25 Nov 2009 05:26:40 +0000 (05:26 +0000)]
graphite-poly.c (pbb_remove_duplicate_pdrs): Free collapsed.
2009-10-30 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.c (pbb_remove_duplicate_pdrs): Free collapsed.
From-SVN: r154629
Sebastian Pop [Wed, 25 Nov 2009 05:26:10 +0000 (05:26 +0000)]
Empty patch as it has been later reverted from the graphite branch.
From-SVN: r154628
Sebastian Pop [Wed, 25 Nov 2009 05:25:43 +0000 (05:25 +0000)]
graphite-clast-to-gimple.c (gloog): Do not call sese_reset_aux_in_loops.
2009-10-26 Sebastian Pop <sebastian.pop@amd.com>
* graphite-clast-to-gimple.c (gloog): Do not call
sese_reset_aux_in_loops.
* graphite-sese-to-poly.c (build_loop_iteration_domains): Pass an
extra argument for domains. Do not use loop->aux.
(build_scop_iteration_domain): Initialize and free domains, pass it
to build_loop_iteration_domains and extract the information from
domains. Do not use loop->aux.
* sese.c (sese_reset_aux_in_loops): Removed.
* sese.h (sese_reset_aux_in_loops): Removed.
From-SVN: r154627
Sebastian Pop [Wed, 25 Nov 2009 05:25:11 +0000 (05:25 +0000)]
graphite-clast-to-gimple.c (find_pbb_via_hash): Moved up.
2009-10-26 Sebastian Pop <sebastian.pop@amd.com>
* graphite-clast-to-gimple.c (find_pbb_via_hash): Moved up.
(dependency_in_loop_p): Same.
(translate_clast): Do not use loop->aux. Initialize
loop->can_be_parallel.
(mark_loops_parallel): Removed.
* graphite-clast-to-gimple.h (mark_loops_parallel): Removed.
* graphite.c (free_aux_in_new_loops): Removed.
(graphite_finalize): Do not call free_aux_in_new_loops.
(graphite_transform_loops): Do not call mark_loops_parallel.
From-SVN: r154626
Li Feng [Wed, 25 Nov 2009 05:24:43 +0000 (05:24 +0000)]
graphite-clast-to-gimple.c (get_stmtfor_depth): Removed.
2009-10-20 Li Feng <nemokingdom@gmail.com>
* graphite-clast-to-gimple.c (get_stmtfor_depth): Removed.
(translate_clast): Pass an extra parameter LEVEL.
Call get_scattering_level.
* graphite-clast-to-gimple.h (get_scattering_level): New.
From-SVN: r154625
Sebastian Pop [Wed, 25 Nov 2009 05:24:14 +0000 (05:24 +0000)]
cfgloop.c (alloc_loop): Initialize loop->single_iv.
2009-10-22 Sebastian Pop <sebastian.pop@amd.com>
* cfgloop.c (alloc_loop): Initialize loop->single_iv.
* cfgloop.h (struct loop): New field single_iv.
* graphite-clast-to-gimple.c (pbb_to_depth_to_oldiv): Do not use
loop->aux anymore: use loop->single_iv.
(graphite_loop_normal_form): Moved...
(build_graphite_loop_normal_form): Removed.
(gloog): Do not call build_graphite_loop_normal_form.
(free_aux_in_new_loops): Moved...
(mark_loops_parallel): Restructure.
* graphite-clast-to-gimple.h (free_aux_in_new_loops): Do not declare.
* graphite-sese-to-poly.c (graphite_loop_normal_form): ...here.
(scop_canonicalize_loops): New.
(build_poly_scop): Call scop_canonicalize_loops.
* graphite.c (free_aux_in_new_loops): ...here.
From-SVN: r154624
Sebastian Pop [Wed, 25 Nov 2009 05:23:45 +0000 (05:23 +0000)]
graphite.exp: Add the same rules as in gcc.dg/graphite/graphite.exp.
2009-10-22 Sebastian Pop <sebastian.pop@amd.com>
* g++.dg/graphite/graphite.exp: Add the same rules as in
gcc.dg/graphite/graphite.exp.
From-SVN: r154623
Sebastian Pop [Wed, 25 Nov 2009 05:23:16 +0000 (05:23 +0000)]
id-1.C: New.
2009-10-22 Sebastian Pop <sebastian.pop@amd.com>
* g++.dg/graphite/id-1.C: New.
From-SVN: r154622
Sebastian Pop [Wed, 25 Nov 2009 05:22:49 +0000 (05:22 +0000)]
graphite-sese-to-poly.c (create_zero_dim_array): Pass an extra argument base_name.
2009-10-22 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (create_zero_dim_array): Pass an extra
argument base_name.
(rewrite_close_phi_out_of_ssa): Update use of create_zero_dim_array.
(rewrite_phi_out_of_ssa): Same.
(rewrite_cross_bb_scalar_deps): Same.
(translate_scalar_reduction_to_array): Same.
From-SVN: r154621
Sebastian Pop [Wed, 25 Nov 2009 05:22:21 +0000 (05:22 +0000)]
Empty patch as already applied to trunk.
2009-10-22 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (build_scop_drs): Disable call to
dump_alias_graphs.
From-SVN: r154620
Sebastian Pop [Wed, 25 Nov 2009 05:21:54 +0000 (05:21 +0000)]
graphite-sese-to-poly.c (dump_alias_graphs): New.
2009-10-22 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (dump_alias_graphs): New.
(build_scop_drs): Call dump_alias_graphs.
From-SVN: r154619
Sebastian Pop [Wed, 25 Nov 2009 05:21:26 +0000 (05:21 +0000)]
graphite-poly.c (new_scop): Initialize SCOP_ORIGINAL_SCHEDULE...
2009-10-22 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.c (new_scop): Initialize SCOP_ORIGINAL_SCHEDULE,
SCOP_TRANSFORMED_SCHEDULE, and SCOP_SAVED_SCHEDULE.
(free_scop): Call free_lst on SCOP_ORIGINAL_SCHEDULE,
SCOP_TRANSFORMED_SCHEDULE, and SCOP_SAVED_SCHEDULE.
* graphite-poly.h (free_lst): New.
(store_lst_schedule): Free SCOP_SAVED_SCHEDULE.
(restore_lst_schedule): Free SCOP_TRANSFORMED_SCHEDULE.
From-SVN: r154618
Sebastian Pop [Wed, 25 Nov 2009 05:20:58 +0000 (05:20 +0000)]
graphite-poly.h (struct scop): Add a field saved_schedule.
2009-10-22 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.h (struct scop): Add a field saved_schedule.
(SCOP_SAVED_SCHEDULE): New.
(store_lst_schedule): New.
(restore_lst_schedule): New.
(store_scattering): Call store_lst_schedule.
(restore_scattering): Call restore_lst_schedule.
From-SVN: r154617
Sebastian Pop [Wed, 25 Nov 2009 05:20:31 +0000 (05:20 +0000)]
graphite-sese-to-poly.c (free_data_refs_aux): Fix formatting.
2009-10-20 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (free_data_refs_aux): Fix formatting.
(pdr_add_alias_set): Same.
(build_poly_dr): Same.
(build_alias_set_optimal_p): Same.
(build_base_obj_set_for_drs): Same. Do not store the result of
graphds_dfs.
From-SVN: r154616
Sebastian Pop [Wed, 25 Nov 2009 05:20:01 +0000 (05:20 +0000)]
graphite-sese-to-poly.c (build_alias_set_optimal_p): Initialize all_components_are_cliques to 1.
2009-10-20 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (build_alias_set_optimal_p): Initialize
all_components_are_cliques to 1.
From-SVN: r154615
Li Feng [Wed, 25 Nov 2009 05:19:32 +0000 (05:19 +0000)]
graphite-sese-to-poly.c (free_data_refs_aux): Update to free the new structure.
2009-10-20 Li Feng <nemokingdom@gmail.com>
* graphite-sese-to-poly.c (free_data_refs_aux): Update to free
the new structure.
(pdr_add_alias_set): Update retrieving alias_set_num.
(build_poly_dr): Update retrieving dr_base_object_set.
(partition_drs_to_sets): Remove.
(build_alias_set_optimal_p): New.
(build_alias_set_for_drs): Rename.
(build_scop_drs): Update.
* graphite-sese-to-poly.h (struct base_alias_pair): New.
(ALIAS_SET_INDEX): Remove.
(BASE_OBJECT_SET_INDEX): Remove.
From-SVN: r154614
Sebastian Pop [Wed, 25 Nov 2009 05:19:05 +0000 (05:19 +0000)]
sese.c (get_vdef_before_sese): Handle GIMPLE_ASSIGN and GIMPLE_CALL.
2009-10-20 Sebastian Pop <sebastian.pop@amd.com>
* sese.c (get_vdef_before_sese): Handle GIMPLE_ASSIGN and GIMPLE_CALL.
From-SVN: r154613
Sebastian Pop [Wed, 25 Nov 2009 05:18:35 +0000 (05:18 +0000)]
graphite-sese-to-poly.c (pdr_add_data_dimensions): Do not infer loop upper bounds for 1-element arrays at end of structures.
2009-10-20 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (pdr_add_data_dimensions): Do not infer
loop upper bounds for 1-element arrays at end of structures.
* tree-flow.h (array_at_struct_end_p): Declared.
* tree-ssa-loop-niter.c (array_at_struct_end_p): Not static anymore.
From-SVN: r154612
Sebastian Pop [Wed, 25 Nov 2009 05:18:06 +0000 (05:18 +0000)]
pr41305.C: New.
2009-10-20 Sebastian Pop <sebastian.pop@amd.com>
* g++.dg/graphite/pr41305.C: New.
From-SVN: r154611
Alexander Monakov [Wed, 25 Nov 2009 05:17:38 +0000 (08:17 +0300)]
graphite-sese-to-poly.c (build_loop_iteration_domains): Generalize construction of parameter constraints from loop iteration analysis.
2009-10-20 Alexander Monakov <amonakov@ispras.ru>
* graphite-sese-to-poly.c (build_loop_iteration_domains): Generalize
construction of parameter constraints from loop iteration analysis.
* gcc.dg/graphite/run-id-2.c: New test.
From-SVN: r154610
Sebastian Pop [Wed, 25 Nov 2009 05:17:09 +0000 (05:17 +0000)]
graphite-interchange.c (memory_stride_in_loop): Delete p1, lma and new_cstr.
2009-10-17 Sebastian Pop <sebastian.pop@amd.com>
* graphite-interchange.c (memory_stride_in_loop): Delete p1, lma
and new_cstr.
From-SVN: r154609
Sebastian Pop [Wed, 25 Nov 2009 05:16:42 +0000 (05:16 +0000)]
graphite-dependences.c (dependence_polyhedron_1): Remove unused gdim dimensions from the DDR polyhedron.
2009-10-17 Sebastian Pop <sebastian.pop@amd.com>
* graphite-dependences.c (dependence_polyhedron_1): Remove
unused gdim dimensions from the DDR polyhedron.
From-SVN: r154608
Sebastian Pop [Wed, 25 Nov 2009 05:16:14 +0000 (05:16 +0000)]
graphite-dependences.c (pddr_transformed_scattering): New.
2009-10-17 Sebastian Pop <sebastian.pop@amd.com>
* graphite-dependences.c (pddr_transformed_scattering): New.
(dot_original_deps_stmt_1): New.
(dot_transformed_deps_stmt_1): New.
(dot_deps_stmt_1): Call dot_original_deps_stmt_1 and
dot_transformed_deps_stmt_1.
(dot_original_deps): New.
(dot_transformed_deps): New.
(dot_deps_1): Call dot_original_deps and dot_transformed_deps.
From-SVN: r154607
Sebastian Pop [Wed, 25 Nov 2009 05:15:47 +0000 (05:15 +0000)]
graphite-dependences.c (reduction_dr_1): Remove wrong assert: reduction BBs can have multiple reduction writes to memory.
2009-10-17 Sebastian Pop <sebastian.pop@amd.com>
* graphite-dependences.c (reduction_dr_1): Remove wrong
assert: reduction BBs can have multiple reduction writes
to memory.
From-SVN: r154606
Sebastian Pop [Wed, 25 Nov 2009 05:15:18 +0000 (05:15 +0000)]
interchange-3.f90: New.
2009-10-17 Sebastian Pop <sebastian.pop@amd.com>
* gfortran.dg/graphite/interchange-3.f90: New.
From-SVN: r154605
Sebastian Pop [Wed, 25 Nov 2009 05:14:51 +0000 (05:14 +0000)]
interchange-1.c: Un-XFAILed.
2009-10-17 Sebastian Pop <sebastian.pop@amd.com>
* gcc.dg/graphite/interchange-1.c: Un-XFAILed.
From-SVN: r154604
Sebastian Pop [Wed, 25 Nov 2009 05:14:24 +0000 (05:14 +0000)]
graphite-dependences.c (dependence_polyhedron_1): Add the context to the dependence polyhedron.
2009-10-17 Sebastian Pop <sebastian.pop@amd.com>
* graphite-dependences.c (dependence_polyhedron_1): Add the
context to the dependence polyhedron.
From-SVN: r154603
Sebastian Pop [Wed, 25 Nov 2009 05:13:57 +0000 (05:13 +0000)]
graphite-poly.c (pbb_remove_duplicate_pdrs): Initialize PBB_PDR_DUPLICATES_REMOVED.
2009-10-17 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.c (pbb_remove_duplicate_pdrs): Initialize
PBB_PDR_DUPLICATES_REMOVED.
(new_poly_bb): Same.
From-SVN: r154602
Sebastian Pop [Wed, 25 Nov 2009 05:13:30 +0000 (05:13 +0000)]
graphite-sese-to-poly.c (find_scop_parameters): Initialize SCOP_CONTEXT.
2009-10-17 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (find_scop_parameters): Initialize
SCOP_CONTEXT.
(build_loop_iteration_domains): Extract bounds on parameters
based on the data size.
(build_scop_context): Do not initialize SCOP_CONTEXT;
add new constraints.
From-SVN: r154601
Sebastian Pop [Wed, 25 Nov 2009 05:13:03 +0000 (05:13 +0000)]
graphite-ppl.c (ppl_min_for_le_polyhedron): New.
2009-10-17 Sebastian Pop <sebastian.pop@amd.com>
* graphite-ppl.c (ppl_min_for_le_polyhedron): New.
* graphite-ppl.h (graphite-ppl.h): Declared.
From-SVN: r154600
Sebastian Pop [Wed, 25 Nov 2009 05:12:35 +0000 (05:12 +0000)]
graphite-ppl.c (ppl_print_linear_expr): New.
2009-10-17 Sebastian Pop <sebastian.pop@amd.com>
* graphite-ppl.c (ppl_print_linear_expr): New.
(debug_ppl_linear_expr): New.
* graphite-ppl.h (ppl_print_linear_expr): Declared.
(debug_ppl_linear_expr): Declared.
From-SVN: r154599
Sebastian Pop [Wed, 25 Nov 2009 05:12:07 +0000 (05:12 +0000)]
graphite-interchange.c: Fix comments.
2009-10-16 Sebastian Pop <sebastian.pop@amd.com>
* graphite-interchange.c: Fix comments.
* gcc.dg/graphite/block-1.c: Fix comments.
From-SVN: r154598
Sebastian Pop [Wed, 25 Nov 2009 05:11:38 +0000 (05:11 +0000)]
interchange-7.c: Un-XFAILed.
2009-10-16 Sebastian Pop <sebastian.pop@amd.com>
* gcc.dg/graphite/interchange-7.c: Un-XFAILed.
* gcc.dg/graphite/interchange-9.c: Un-XFAILed.
From-SVN: r154597
Sebastian Pop [Wed, 25 Nov 2009 05:11:10 +0000 (05:11 +0000)]
Empty patch, as it already is applied to trunk.
From-SVN: r154596
Sebastian Pop [Wed, 25 Nov 2009 05:10:43 +0000 (05:10 +0000)]
graphite-interchange.c (memory_stride_in_loop): The depth argument corresponds to a dynamic time dimension...
2009-10-15 Sebastian Pop <sebastian.pop@amd.com>
* graphite-interchange.c (memory_stride_in_loop): The depth
argument corresponds to a dynamic time dimension, so use
psct_dynamic_dim to refer to the transformed scattering dimension.
From-SVN: r154595
Sebastian Pop [Wed, 25 Nov 2009 05:10:14 +0000 (05:10 +0000)]
graphite-interchange.c (memory_stride_in_loop): Fix comments.
2009-10-15 Sebastian Pop <sebastian.pop@amd.com>
* graphite-interchange.c (memory_stride_in_loop): Fix comments.
From-SVN: r154594
Sebastian Pop [Wed, 25 Nov 2009 05:09:36 +0000 (05:09 +0000)]
graphite-blocking.c (lst_do_strip_mine): Avoid strip mining the root of the LST.
2009-10-15 Sebastian Pop <sebastian.pop@amd.com>
* graphite-blocking.c (lst_do_strip_mine): Avoid strip mining the
root of the LST.
* graphite-interchange.c (lst_do_interchange): Avoid interchanging
the root of the LST.
* graphite-poly.c (scop_to_lst): Fix LST sequence in an outermost
fake loop.
(print_lst): Print the root of LST in a different format.
* graphite-poly.h (lst_depth): Adjust to include the root of the LST.
From-SVN: r154593
Sebastian Pop [Wed, 25 Nov 2009 05:09:07 +0000 (05:09 +0000)]
graphite-poly.c (print_scop): Fix pretty printing of a SCoP.
2009-10-15 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.c (print_scop): Fix pretty printing of a SCoP.
From-SVN: r154592
Sebastian Pop [Wed, 25 Nov 2009 05:08:37 +0000 (05:08 +0000)]
passes.texi: Document the Graphite infrastructure.
2009-10-15 Sebastian Pop <sebastian.pop@amd.com>
* doc/passes.texi: Document the Graphite infrastructure.
From-SVN: r154591
Sebastian Pop [Wed, 25 Nov 2009 05:08:09 +0000 (05:08 +0000)]
re PR middle-end/41193 (slow compilation with graphite / ice with graphite)
2009-10-15 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (insert_copyin): Use gsi_insert_seq_on_edge.
(rewrite_commutative_reductions_out_of_ssa): Call gsi_commit_edge_inserts,
and check the SSA representation.
* gfortran.dg/graphite/id-18.f90: New, reduced from PR41193.
From-SVN: r154590
Sebastian Pop [Wed, 25 Nov 2009 05:07:43 +0000 (05:07 +0000)]
pr40157.c: Use -floop-block as reported in the PR.
2009-10-15 Sebastian Pop <sebastian.pop@amd.com>
* gcc.dg/graphite/pr40157.c: Use -floop-block as reported in the PR.
From-SVN: r154589
Sebastian Pop [Wed, 25 Nov 2009 05:07:16 +0000 (05:07 +0000)]
interchange-11.c: New.
2009-10-14 Sebastian Pop <sebastian.pop@amd.com>
* gcc.dg/graphite/interchange-11.c: New.
From-SVN: r154588
Sebastian Pop [Wed, 25 Nov 2009 05:06:49 +0000 (05:06 +0000)]
interchange-8.c: Enable loop interchange.
2009-10-14 Sebastian Pop <sebastian.pop@amd.com>
* gcc.dg/graphite/interchange-8.c: Enable loop interchange.
From-SVN: r154587
Sebastian Pop [Wed, 25 Nov 2009 05:06:21 +0000 (05:06 +0000)]
graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK): Add -fno-loop-strip-mine and -fno-loop-interchange.
2009-10-14 Sebastian Pop <sebastian.pop@amd.com>
* gcc.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK):
Add -fno-loop-strip-mine and -fno-loop-interchange.
(DEFAULT_FLAGS_GRAPHITE_INTERCHANGE): Add -fno-loop-block and
-fno-loop-strip-mine.
* gfortran.dg/graphite/graphite.exp: Same.
From-SVN: r154586
Sebastian Pop [Wed, 25 Nov 2009 05:05:53 +0000 (05:05 +0000)]
graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK): Renamed DEFAULT_FLAGS_GRAPHITE_BLOCK.
2009-10-14 Sebastian Pop <sebastian.pop@amd.com>
* gcc.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK):
Renamed DEFAULT_FLAGS_GRAPHITE_BLOCK.
(DEFAULT_CFLAGS_GRAPHITE_IDENTITY): Renamed
DEFAULT_FLAGS_GRAPHITE_IDENTITY.
(DEFAULT_CFLAGS_GRAPHITE_INTERCHANGE): Renamed
DEFAULT_FLAGS_GRAPHITE_INTERCHANGE.
(DEFAULT_CFLAGS_GRAPHITE_SCOP): Renamed
DEFAULT_FLAGS_GRAPHITE_SCOP.
(DEFAULT_CFLAGS_RUN_ID): Renamed DEFAULT_FLAGS_RUN_ID.
(DEFAULT_CFLAGS_GRAPHITE): Renamed DEFAULT_FLAGS_GRAPHITE.
From-SVN: r154585
Sebastian Pop [Wed, 25 Nov 2009 05:05:22 +0000 (05:05 +0000)]
graphite-poly.c (pbb_number_of_iterations_at_time): Cleanup comments.
2009-10-14 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.c (pbb_number_of_iterations_at_time): Cleanup comments.
From-SVN: r154584
Konrad Trifunovic [Wed, 25 Nov 2009 05:04:53 +0000 (05:04 +0000)]
graphite-interchange.c (build_linearized_memory_access): Pass an offset as parameter.
2009-10-14 Konrad Trifunovic <konrad.trifunovic@gmail.com>
Sebastian Pop <sebastian.pop@amd.com>
* graphite-interchange.c (build_linearized_memory_access): Pass an
offset as parameter.
(memory_stride_in_loop): Include transform scattering in the
access functions to be able to querry the strides in the
transformed loops.
(pbb_interchange_loop_depths): Interchange the psct_dynamic_dim,
not the psct_iterator_dim.
Co-Authored-By: Sebastian Pop <sebastian.pop@amd.com>
From-SVN: r154583
Sebastian Pop [Wed, 25 Nov 2009 05:04:26 +0000 (05:04 +0000)]
graphite-blocking.c (pbb_do_strip_mine): Removed.
2009-10-14 Sebastian Pop <sebastian.pop@amd.com>
* graphite-blocking.c (pbb_do_strip_mine): Removed.
(lst_do_strip_mine_loop): New.
(lst_do_strip_mine): New.
(scop_do_strip_mine): Call lst_do_strip_mine.
* graphite-poly.h (lst_add_loop_under_loop): New.
(lst_find_first_pbb): New.
From-SVN: r154582
Sebastian Pop [Wed, 25 Nov 2009 05:03:58 +0000 (05:03 +0000)]
graphite-poly.c (loop_to_lst): Fix LST creation.
2009-10-14 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.c (loop_to_lst): Fix LST creation.
From-SVN: r154581
Tobias Grosser [Wed, 25 Nov 2009 05:03:27 +0000 (05:03 +0000)]
id-15.c: (8 * 8) replaced with sizeof(unsigned long) to make it run on 32bit systems.
2009-10-14 Tobias Grosser <grosser@fim.uni-passau.de>
* testsuite/gcc.dg/graphite/id-15.c: (8 * 8) replaced with
sizeof(unsigned long) to make it run on 32bit systems.
From-SVN: r154580
Sebastian Pop [Wed, 25 Nov 2009 05:02:58 +0000 (05:02 +0000)]
* testsuite/gcc.dg/graphite/id-15.c: Adjusted.
From-SVN: r154579
Sebastian Pop [Wed, 25 Nov 2009 05:02:31 +0000 (05:02 +0000)]
run-id-1.c: Adjusted size of data to fit on 32-bit machines.
* testsuite/gcc.dg/graphite/run-id-1.c: Adjusted size of data
to fit on 32-bit machines.
From-SVN: r154578
Ramakrishna Upadrasta [Wed, 25 Nov 2009 05:02:04 +0000 (06:02 +0100)]
graphite-sese-to-poly.c (write_alias_graph_to_ascii_dimacs): Fix Comment.
2009-10-14 Ramakrishna Upadrasta <Ramakrishna.Upadrasta@inria.fr>
* graphite-sese-to-poly.c (write_alias_graph_to_ascii_dimacs): Fix Comment.
(write_alias_graph_to_ascii_dot): New.
(write_alias_graph_to_ascii_ecc): Ditto.
(partition_drs_to_sets): Add testing of optimality of current method which
assigns alias numbers according to DFS Comopnent number.
used as heuristic for the upcoming ECC algorithm.
(build_scop_drs): Write to file also with the ecc and dot format.
From-SVN: r154577
Sebastian Pop [Wed, 25 Nov 2009 05:01:36 +0000 (05:01 +0000)]
interchange-1.f: XFail.
2009-10-13 Sebastian Pop <sebastian.pop@amd.com>
* gfortran.dg/graphite/interchange-1.f: XFail.
From-SVN: r154576
Sebastian Pop [Wed, 25 Nov 2009 05:01:06 +0000 (05:01 +0000)]
graphite.c (graphite_initialize): Do not handle functions with more than 100 basic blocks.
2009-10-13 Sebastian Pop <sebastian.pop@amd.com>
* graphite.c (graphite_initialize): Do not handle functions with
more than 100 basic blocks.
From-SVN: r154575
Sebastian Pop [Wed, 25 Nov 2009 05:00:38 +0000 (05:00 +0000)]
graphite-blocking.c (pbb_do_strip_mine): Use PARAM_LOOP_BLOCK_TILE_SIZE.
2009-10-13 Sebastian Pop <sebastian.pop@amd.com>
* graphite-blocking.c (pbb_do_strip_mine): Use
PARAM_LOOP_BLOCK_TILE_SIZE.
* params.def (PARAM_LOOP_BLOCK_TILE_SIZE): Declared.
From-SVN: r154574
Sebastian Pop [Wed, 25 Nov 2009 05:00:08 +0000 (05:00 +0000)]
graphite-poly.c (dot_lst_1): New.
2009-10-13 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.c (dot_lst_1): New.
(dot_lst): New.
* graphite-poly.h (dot_lst): Declared.
From-SVN: r154573
Sebastian Pop [Wed, 25 Nov 2009 04:59:39 +0000 (04:59 +0000)]
graphite-dependences.c (dot_deps_stmt_1): New.
2009-10-13 Sebastian Pop <sebastian.pop@amd.com>
* graphite-dependences.c (dot_deps_stmt_1): New.
(dot_deps_stmt): New.
* graphite-dependences.h (dot_deps_stmt): Declared.
From-SVN: r154572
Sebastian Pop [Wed, 25 Nov 2009 04:59:10 +0000 (04:59 +0000)]
ChangeLog.graphite: New.
2009-10-09 Sebastian Pop <sebastian.pop@amd.com>
* ChangeLog.graphite: New.
* testsuite/libgomp.graphite/graphite.exp (PARALLEL_CFLAGS): Add
-fno-loop-block.
From-SVN: r154571
Sebastian Pop [Wed, 25 Nov 2009 04:58:45 +0000 (04:58 +0000)]
graphite-sese-to-poly.c (rewrite_cross_bb_scalar_dependence): Do not replace cross BB scalar dependences ending on PHI nodes.
2009-10-09 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (rewrite_cross_bb_scalar_dependence): Do
not replace cross BB scalar dependences ending on PHI nodes.
(rewrite_cross_bb_scalar_deps): Filter out GIMPLE_PHI nodes.
From-SVN: r154570
Sebastian Pop [Wed, 25 Nov 2009 04:58:16 +0000 (04:58 +0000)]
graphite-poly.c (apply_poly_transforms): Implement the high level driver for flag_loop_block.
2009-10-09 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.c (apply_poly_transforms): Implement the high
level driver for flag_loop_block.
* tree-ssa-loop.c (gate_graphite_transforms): Remove call to sorry for
flag_loop_block.
* gcc.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK): Add
-floop-block.
* gfortran.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK):
Add -floop-block.
From-SVN: r154569
Sebastian Pop [Wed, 25 Nov 2009 04:57:45 +0000 (04:57 +0000)]
graphite-poly.h (lst_find_pbb): New.
2009-10-09 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.h (lst_find_pbb): New.
(find_lst_loop): New.
From-SVN: r154568
Sebastian Pop [Wed, 25 Nov 2009 04:57:17 +0000 (04:57 +0000)]
graphite-poly.c (new_scop): Remove init of SCOP_DEP_GRAPH.
2009-10-09 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.c (new_scop): Remove init of SCOP_DEP_GRAPH.
* graphite-poly.h (struct scop): Remove dep_graph field.
(SCOP_DEP_GRAPH): Removed.
From-SVN: r154567
Sebastian Pop [Wed, 25 Nov 2009 04:56:49 +0000 (04:56 +0000)]
graphite-poly.h (copy_lst): Do full copy of LST.
2009-10-09 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.h (copy_lst): Do full copy of LST.
From-SVN: r154566
Sebastian Pop [Wed, 25 Nov 2009 04:56:21 +0000 (04:56 +0000)]
graphite-sese-to-poly.c (reduction_phi_p): Call remove_invariant_phi when the loop stride is zero.
2009-10-07 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (reduction_phi_p): Call remove_invariant_phi
when the loop stride is zero.
* gcc.dg/graphite/id-16.c: New.
From-SVN: r154565
Sebastian Pop [Wed, 25 Nov 2009 04:55:53 +0000 (04:55 +0000)]
graphite-dependences.c (reduction_dr_1): New.
2009-10-06 Sebastian Pop <sebastian.pop@amd.com>
* graphite-dependences.c (reduction_dr_1): New.
(reduction_dr_p): New.
(graphite_legal_transform_dr): Call reduction_dr_p.
(reduction_ddr): Renamed reduction_ddr_p.
* graphite-poly.h (same_pdr_p): New.
(number_of_write_pdrs): New.
* graphite-sese-to-poly.c (nb_data_writes_in_bb): New.
(split_reduction_stmt): Do not split reduction statements
when there are no writes to memory.
(translate_scalar_reduction_to_array_for_stmt): Insert the
memory reduction statement just after the scalar reduction statement.
* gcc.dg/graphite/interchange-10.c: Updated to differ from interchange-4.c.
Un-XFAIL-ed.
* gcc.dg/graphite/interchange-3.c: Un-XFAIL-ed.
* gcc.dg/graphite/interchange-4.c: Un-XFAIL-ed.
From-SVN: r154564
Sebastian Pop [Wed, 25 Nov 2009 04:55:25 +0000 (04:55 +0000)]
graphite-interchange.c (lst_apply_interchange): New.
2009-10-06 Sebastian Pop <sebastian.pop@amd.com>
* graphite-interchange.c (lst_apply_interchange): New.
(lst_interchange_profitable_p): New.
(lst_try_interchange_loops): New.
(lst_try_interchange): New.
(lst_do_interchange): New.
(pbb_do_interchange): Removed.
(scop_do_interchange): Call lst_do_interchange.
From-SVN: r154563
Sebastian Pop [Wed, 25 Nov 2009 04:54:59 +0000 (04:54 +0000)]
graphite-poly.c (print_scop): Print SCOP_ORIGINAL_SCHEDULE and SCOP_TRANSFORMED_SCHEDULE.
2009-10-06 Sebastian Pop <sebastian.pop@amd.com>
* graphite-poly.c (print_scop): Print SCOP_ORIGINAL_SCHEDULE and
SCOP_TRANSFORMED_SCHEDULE.
(loop_to_lst): New.
(scop_to_lst): New.
(print_lst): New.
(debug_lst): New.
* graphite-poly.h (lst_p): New.
(struct lst): New.
(LST_LOOP_P): New.
(LST_LOOP_FATHER): New.
(LST_PBB): New.
(LST_SEQ): New.
(scop_to_lst): Declared.
(print_lst): Declared.
(debug_lst): Declared.
(new_lst_loop): New.
(new_lst_stmt): New.
(copy_lst): New.
(lst_depth): New.
(lst_dewey_number): New.
(struct scop): Add original_schedule and transformed_schedule fields.
(SCOP_ORIGINAL_SCHEDULE): New.
(SCOP_TRANSFORMED_SCHEDULE): New.
* graphite-sese-to-poly.c (build_poly_scop): Call scop_to_lst.
From-SVN: r154562
Sebastian Pop [Wed, 25 Nov 2009 04:54:30 +0000 (04:54 +0000)]
graphite-dependences.c (reduction_ddr): New.
2009-10-05 Sebastian Pop <sebastian.pop@amd.com>
* graphite-dependences.c (reduction_ddr): New.
(graphite_legal_transform_bb): Call reduction_ddr.
* graphite-poly.c (new_poly_bb): Pass a new bool parameter.
Initialize PBB_IS_REDUCTION.
* graphite-poly.h (struct poly_bb): New bool field is_reduction.
(PBB_IS_REDUCTION): New.
(new_poly_bb): Update declaration.
* graphite-scop-detection.h (build_scop_bbs): Removed.
(nb_reductions_in_loop): Removed.
* graphite-sese-to-poly.c (try_generate_gimple_bb): Pass a sbitmap
parameter for reductions.
(try_generate_gimple_bb): Update call to new_poly_bb.
(build_scop_bbs_1): Same.
(build_scop_bbs): Same.
(gsi_for_phi_node): New.
(scalar_close_phi_node_p): Remove gcc_assert.
(split_reduction_stmt): New.
(is_reduction_operation_p): New.
(phi_contains_arg): New.
(follow_ssa_with_commutative_ops): New.
(detect_commutative_reduction_arg): New.
(detect_commutative_reduction_assign): New.
(follow_inital_value_to_phi): New.
(edge_initial_value_for_loop_phi): New.
(initial_value_for_loop_phi): New.
(detect_commutative_reduction): New.
(translate_scalar_reduction_to_array_for_stmt): New.
(insert_copyout): New.
(insert_copyin): New.
(translate_scalar_reduction_to_array): New.
(rewrite_commutative_reductions_out_of_ssa_close_phi): New.
(rewrite_commutative_reductions_out_of_ssa_loop): New.
(rewrite_commutative_reductions_out_of_ssa): New.
(build_poly_scop): Call rewrite_commutative_reductions_out_of_ssa.
* sese.h (split_region_for_bb): New.
* gcc.dg/graphite/graphite.exp (DEFAULT_CFLAGS_GRAPHITE_BLOCK): Add -ffast-math.
* gcc.dg/graphite/interchange-1.c: Fix format.
* gcc.dg/graphite/interchange-10.c: New.
From-SVN: r154561
Sebastian Pop [Wed, 25 Nov 2009 04:54:00 +0000 (04:54 +0000)]
graphite-sese-to-poly.c (insert_out_of_ssa_copy): Remove buggy assert.
2009-10-05 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (insert_out_of_ssa_copy): Remove
buggy assert.
From-SVN: r154560
Sebastian Pop [Wed, 25 Nov 2009 04:53:33 +0000 (04:53 +0000)]
graphite-sese-to-poly.c (scev_analyzable_p): New.
2009-10-05 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (scev_analyzable_p): New.
(rewrite_cross_bb_scalar_dependence): New.
(rewrite_cross_bb_scalar_deps): New.
(rewrite_reductions_out_of_ssa): Use bb_in_sese_p.
Call rewrite_cross_bb_scalar_deps.
From-SVN: r154559
Sebastian Pop [Wed, 25 Nov 2009 04:53:05 +0000 (04:53 +0000)]
graphite-sese-to-poly.c (gsi_for_ssa_name_def): Removed.
2009-10-05 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (gsi_for_ssa_name_def): Removed.
(insert_out_of_ssa_copy): Directly use gsi_after_labels and
gsi_for_stmt.
From-SVN: r154558
Sebastian Pop [Wed, 25 Nov 2009 04:52:38 +0000 (04:52 +0000)]
graphite-clast-to-gimple.c (build_cloog_prog): Use pbb_index.
2009-10-05 Sebastian Pop <sebastian.pop@amd.com>
* graphite-clast-to-gimple.c (build_cloog_prog): Use pbb_index.
* graphite-interchange.c (pbb_do_interchange): Same.
* graphite-poly.c (print_scattering_function): Same.
(debug_pdrs): Same.
* graphite-poly.h (pbb_loop): New.
* graphite-sese-to-poly.c (create_linear_expr_from_tree): Use pbb_loop.
From-SVN: r154557
Sebastian Pop [Wed, 25 Nov 2009 04:52:08 +0000 (04:52 +0000)]
graphite-scop-detection.c (limit_scops): Do not build poly_bbs.
2009-09-27 Sebastian Pop <sebastian.pop@amd.com>
* graphite-scop-detection.c (limit_scops): Do not build poly_bbs.
From-SVN: r154556
Sebastian Pop [Wed, 25 Nov 2009 04:51:41 +0000 (04:51 +0000)]
graphite-sese-to-poly.c (partition_drs_to_sets): Drs is not modified, so don't pass a pointer to it.
2009-09-27 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (partition_drs_to_sets): Drs is not modified,
so don't pass a pointer to it.
(build_alias_set_for_drs): Same.
(build_base_obj_set_for_drs): Same.
(build_scop_drs): Same.
From-SVN: r154555
Li Feng [Wed, 25 Nov 2009 04:51:14 +0000 (04:51 +0000)]
graphite-sese-to-poly.c (build_scop_drs): Disable writing to file the alias graph of data references.
2009-09-26 Li Feng <nemokingdom@gmail.com>
* graphite-sese-to-poly.c (build_scop_drs): Disable writing to file
the alias graph of data references.
From-SVN: r154554
Li Feng [Wed, 25 Nov 2009 04:50:45 +0000 (04:50 +0000)]
graphite-sese-to-poly.c (write_alias_graph_to_ascii_dimacs): New.
2009-09-25 Li Feng <nemokingdom@gmail.com>
* graphite-sese-to-poly.c (write_alias_graph_to_ascii_dimacs): New.
(build_scop_drs): When debugging, write the alias graph to file,
otherwise, should be disabled.
From-SVN: r154553
Sebastian Pop [Wed, 25 Nov 2009 04:50:18 +0000 (04:50 +0000)]
graphite-scop-detection.c (stmt_simple_memref_p): Removed.
2009-09-17 Sebastian Pop <sebastian.pop@amd.com>
* graphite-scop-detection.c (stmt_simple_memref_p): Removed.
(is_simple_operand): Remove call to stmt_simple_memref_p.
(stmt_simple_for_scop_p): Update call to is_simple_operand.
From-SVN: r154552