@@ -1,5 +1,11 @@
2010-08-02 Sebastian Pop <sebastian.pop@amd.com>
+ * graphite-sese-to-poly.c
+ (rewrite_commutative_reductions_out_of_ssa_loop): Call
+ scev_analyzable_p only on is_gimple_reg
+
+2010-08-02 Sebastian Pop <sebastian.pop@amd.com>
+
* graphite-sese-to-poly.c (propagate_expr_outside_region): New.
(rewrite_close_phi_out_of_ssa): Propagate constant values or
parametric expressions outside the scop region.
@@ -1,3 +1,11 @@
+2010-07-26 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-sese-to-poly.c
+ (rewrite_commutative_reductions_out_of_ssa_loop): Call
+ scev_analyzable_p only on is_gimple_reg
+
+ * gcc.dg/graphite/id-25.c: New.
+
2010-07-22 Sebastian Pop <sebastian.pop@amd.com>
* graphite-sese-to-poly.c (propagate_expr_outside_region): New.
@@ -2950,12 +2950,15 @@ rewrite_commutative_reductions_out_of_ssa_loop (loop_p loop,
{
gimple_stmt_iterator gsi;
edge exit = single_exit (loop);
+ tree res;
if (!exit)
return;
for (gsi = gsi_start_phis (exit->dest); !gsi_end_p (gsi); gsi_next (&gsi))
- if (!scev_analyzable_p (gimple_phi_result (gsi_stmt (gsi)), region))
+ if ((res = gimple_phi_result (gsi_stmt (gsi)))
+ && is_gimple_reg (res)
+ && !scev_analyzable_p (res, region))
rewrite_commutative_reductions_out_of_ssa_close_phi (gsi_stmt (gsi),
reductions);
}
@@ -1,5 +1,9 @@
2010-08-02 Sebastian Pop <sebastian.pop@amd.com>
+ * gcc.dg/graphite/id-25.c: New.
+
+2010-08-02 Sebastian Pop <sebastian.pop@amd.com>
+
* gcc.dg/graphite/run-id-5.c: New.
* gcc.dg/graphite/run-id-6.c: New.
* gfortran.dg/graphite/id-21.f: New.
new file mode 100644
@@ -0,0 +1,34 @@
+typedef struct
+{
+ int mvd[2][(16/4)][(16/4)][2];
+} Macroblock;
+typedef struct
+{
+ int part_size[8][2];
+} InputParameters;
+typedef struct
+{
+ Macroblock *mb_data;
+ short****** pred_mv;
+ short****** all_mv;
+} ImageParameters;
+extern InputParameters *input;
+extern ImageParameters *img;
+int writeMotionVector8x8 (void)
+{
+ int i, j, k, l, m;
+ int step_h = input->part_size[7][0];
+ int step_v = input->part_size[7][1];
+ Macroblock* currMB = &img->mb_data[9];
+ int refindex = 0;
+ short****** all_mv = img->all_mv;
+ short****** pred_mv = img->pred_mv;
+
+ for (k=0; k<2; k++)
+ {
+ int curr_mvd = all_mv[2][8][0][8][7][8] - pred_mv[2][7][0][8][7][0];
+ for (l=0; l < step_v; l++)
+ for (m=0; m < step_h; m++)
+ currMB->mvd[0][8][9][8] = curr_mvd;
+ }
+}
From: spop <spop@138bc75d-0d04-0410-961f-82ee72b054a4> 2010-07-26 Sebastian Pop <sebastian.pop@amd.com> * graphite-sese-to-poly.c (rewrite_commutative_reductions_out_of_ssa_loop): Call scev_analyzable_p only on is_gimple_reg * gcc.dg/graphite/id-25.c: New. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/graphite@162555 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 6 +++++ gcc/ChangeLog.graphite | 8 +++++++ gcc/graphite-sese-to-poly.c | 5 +++- gcc/testsuite/ChangeLog | 4 +++ gcc/testsuite/gcc.dg/graphite/id-25.c | 34 +++++++++++++++++++++++++++++++++ 5 files changed, 56 insertions(+), 1 deletions(-) create mode 100644 gcc/testsuite/gcc.dg/graphite/id-25.c