at r217315. Okay for gcc trunk?
Jack
--
Cheers, Roman Gareev.
?
--
Cheers, Roman Gareev.
to reduce the
size of a patch which can be found below.
--
Cheers, Roman Gareev.
2014-11-9 Roman Gareev gareevro...@gmail.com
[gcc/]
* Makefile.in: Remove the compilation of graphite-clast-to-gimple.o.
* common.opt: Remove using of fgraphite
Hi Tobias,
I've attached a patch which removes using of CLooG library from
Graphite. Is it fine for trunk?
--
Cheers, Roman Gareev.
Index: gcc/Makefile.in
===
--- gcc/Makefile.in (revision
is the only commit related to graphite-optimize-isl.c which
has been made since my latest patch.
--
Cheers, Roman Gareev.
, the second one removes support of
CLooG library from configure and make files. What do you think about
this?
--
Cheers, Roman Gareev.
the full move myself)
I could find time for this. What do you mean by ‘switch’? If I’m not
mistaken, ISL generator is already used by default. Should we remove
support of CLooG generator and all files related to it?
--
Cheers, Roman Gareev.
execution-time and compile-time performance comparisons between
CLooG and ISL code generation in Graphite. 4) Use the full/partial
tile separation for the tiles generated by the isl scheduler.
--
Cheers, Roman Gareev.
-development/SeNZf5IA-Lk
--
Cheers, Roman Gareev.
] Error 2
Thanks,
bin
--
Cheers, Roman Gareev.
.
--
Cheers, Roman Gareev.
.
--
Cheers, Roman Gareev.
This patch is ok. I assume you have tested compiling with/without cloog
and isl.
Yes, I’ve tested compiling with/without cloog and isl. Thank you very
much for review!
--
Cheers, Roman Gareev.
. What do you think
about it?
Maybe we should make the ISL AST generator to be the main code
generator of Graphite (the patch1 implements this). What do you think
about it?
--
Cheers, Roman Gareev.
2014-08-15 Roman Gareev gareevro...@gmail.com
Richard, could you please review these patches? We would be very glad
for your comments.
P.S: I’ve attached an improved ChangeLog_entry.
2014-08-15 17:44 GMT+06:00 Richard Biener richard.guent...@gmail.com:
On Fri, Aug 15, 2014 at 1:13 PM, Roman Gareev gareevro...@gmail.com wrote:
I've
--
Cheers, Roman Gareev.
.
Are they fine for trunk? Could we give a headsup on the GCC mailing
list and ask other people to try the new isl support in case this
patch is committed?
--
Cheers, Roman Gareev.
2014-07-12 Roman Gareev gareevro...@gmail.com
gcc/
* graphite-scop
of pointer types, because it’s currently not supported by
Graphite with the ISL AST generator. SSA_NAME nodes are the only
nodes, which are disabled in case they are pointers to object types,
but this can be changed.” ?
--
Cheers, Roman Gareev.
Thank you for the comment!
2014-08-13 15:55 GMT+06:00 Richard Biener richard.guent...@gmail.com:
On Wed, Aug 13, 2014 at 10:07 AM, Roman Gareev gareevro...@gmail.com wrote:
If I’m not mistaken all tree nodes, which have pointer type, can be
divided into two groups: the type is a is a pointer
report.
I’ve implemented this in the attached patch. Is it fine for trunk?
--
Cheers, Roman Gareev.
2014-08-12 Roman Gareev gareevro...@gmail.com
[gcc/testsuite]
* gcc.dg/graphite/pr35356-2.c: Update according to the ISL code
generator.
Index
out)
at /home/roman/llvm-test-suite/MultiSource/Benchmarks/Bullet/main.cpp:63
Could you please advise me an algorithm for pointer handling?
--
Cheers, Roman Gareev.
loop_0 (header = 0, latch = 1, niter = )
{
bb_2 (preds = {bb_0 }, succs = {bb_4 bb_3
be a temporary solution) Is the graphite_can_represent_scev an
appropriate place for the disabling of type handling?
--
Cheers, Roman Gareev.
Index: gcc/graphite-scop-detection.c
===
--- gcc/graphite-scop
with graphite and that compiling this function causes the
miscompile. This allows us to look at less code.
I've tried to reduce btCollisionWorld.cpp and
btCollisionDispatcher.cpp (They can be found attached). Should we ask
Sven?
--
Cheers, Roman Gareev.
void
, Roman Gareev.
* c1) % 18446744073709551616 = 1)
S_12(c1);
Maybe the ISL generator generates wrong code. What do you think about this?
--
Cheers, Roman Gareev.
2014-08-07 Roman Gareev gareevro...@gmail.com
[gcc/]
* graphite-isl-ast-to-gimple.c
-loop-dumping.c
by replacing “MIN_EXPR\[^\\n\\r]*; and MAX_EXPR\[^\\n\\r]*; with
the regexp, which contains the the above-mentioned isl ast?
--
Cheers, Roman Gareev.
changed? (I haven't
found out how to regenerate it.)
I've used printf to print “The CLooG code generator cannot be used
+(CLooG is not available). The ISL code generator was chosen.\n”.
Should another function be used for this purpose?
--
Cheers, Roman Gareev
it?)
--
Cheers, Roman Gareev.
Gareev.
2014-08-4 Roman Gareev gareevro...@gmail.com
[gcc/]
* graphite-isl-ast-to-gimple.c: Add a new struct ast_build_info.
(translate_isl_ast_for_loop): Add checking of the
flag_loop_parallelize_all.
(ast_build_before_for): New function
.
--
Cheers, Roman Gareev.
I've attached the patch, which sets the separate option for all
dimensions. Is it fine for trunk?
--
Cheers, Roman Gareev.
2014-08-05 Roman Gareev gareevro...@gmail.com
[gcc/]
* graphite-isl-ast-to-gimple.c:
(set_options): New function
this?
--
Cheers, Roman Gareev.
vect-pr43423.c.114t.vect(cloog)
Description: Binary data
vect-pr43423.c.114t.vect(isl)
Description: Binary data
Sorry for misprints
Graphite successfully passes all the tests from
libgomp/testsuite/libgomp.graphite except graphite-isl-ast-to-gimple.c
and graphite-poly.h
except force-parallel-5.c and force-parallel-8.c
--
Cheers, Roman Gareev.
(c1);
}
I think it can't be parallelized. Maybe this example is no more
suitable. What do you think about this?
--
Cheers, Roman Gareev.
Index: gcc/graphite-isl-ast-to-gimple.c
===
--- gcc/graphite
. If I'm not mistaken “2 * (
level + 1) “ is also not suitable for all cases.
--
Cheers, Roman Gareev.
Could you please advise me how is it better to answer the following
questions of Sven:
In what way is it not optimal?
That is, what are your optimality criteria?
(I could answer them, but I don't want to miss anything)
--
Cheers, Roman Gareev.
-ast-to-gimple.c.
--
Cheers, Roman Gareev.
2014-07-30 Roman Gareev gareevro...@gmail.com
[gcc/]
* graphite-isl-ast-to-gimple.c:
(gcc_expression_from_isl_ast_expr_id): Add calling of fold_convert.
(gcc_expression_from_isl_expression): Pass
generated by isl-0.12.2 before).
The report has been sent to the isl mailing list and CC you.
--
Cheers, Roman Gareev.
) are passed by
graphite in case we run it with the ISL AST generator.
--
Cheers, Roman Gareev.
2014-07-29 Roman Gareev gareevro...@gmail.com
[gcc/]
* graphite-isl-ast-to-gimple.c:
(gcc_expression_from_isl_ast_expr_id): Add calling
of the rewrite_reductions_out_of_ssa (this
function duplicates pbbs), the rewrite_reductions_out_of_ssa rewrite
out of SSA all the reduction phi nodes of SCOP. What are reduction phi
nodes? How are they related to 'reduction'?
--
Cheers, Roman Gareev.
that pbbs correspond to pbbs of pbb-domain and
pbb-transformed.
--
Cheers, Roman Gareev.
2014-07-23 Roman Gareev gareevro...@gmail.com
[gcc/]
* graphite-isl-ast-to-gimple.c:
(graphite_create_new_guard): New function.
(translate_isl_ast_node_if
and the
pbb-transformed point to the old pbb with index 3.
I've attached the patch, which may fix this.
--
Cheers, Roman Gareev.
Index: gcc/graphite-sese-to-poly.c
===
--- gcc/graphite-sese-to-poly.c
?
--
Cheers, Roman Gareev.
2014-07-26 Roman Gareev gareevro...@gmail.com
[gcc/]
* graphite-sese-to-poly.c:
(new_pbb_from_pbb): Set a new id of pbb1-domain (instead of using the
id of the pbb), which contains pointer to the pbb1.
2014-07-26 Roman Gareev
-domain and pbb-transformed of S_3. A pointer to a
Gimple basic block is not NULL now, but it leads to the wrong answer.
I've tried different examples, which generate ISL AST, but they have
same problems. Could you please advise me another one?
--
Cheers, Roman
);
S_5(c1);
}
S_7();
}
Maybe we could use it. What do you think about this?
--
Cheers, Roman Gareev.
. The code is transformed
correctly with this patch.
--
Cheers, Roman Gareev.
advise me possible functions from
graphite-sese-to-poly.c, which can delete this?
P.S.: Only S_3 has this problem in the example.
--
Cheers, Roman Gareev.
you initialize res outside of the loop?
Yes, I've implemented this in the improved version.
--
Cheers, Roman Gareev.
++)
{
if (i = 25)
res += i;
}
return res;
}
extern void abort ();
int
main (void)
{
int res = foo ();
if (res != 1225)
abort ();
return 0;
}
--
Cheers, Roman Gareev.
Index: gcc/graphite-isl-ast-to-gimple.c
Is there a reason you have those global values? To my understanding they
could possibly just be function parameters?
Yes, it would be fine for this test case. I've implemented this in the
improved version.
--
Cheers, Roman Gareev.
2014-07-23 Roman Gareev
for trunk?
--
Cheers, Roman Gareev.
2014-07-23 Roman Gareev gareevro...@gmail.com
[gcc/]
* graphite-isl-ast-to-gimple.c:
(binary_op_to_tree): Add new cases.
(gcc_expression_from_isl_expr_op): Move isl_ast_op_pdiv_q
. Is it fine for trunk?
--
Cheers, Roman Gareev.
2014-07-23 Roman Gareev gareevro...@gmail.com
[gcc/]
* graphite-isl-ast-to-gimple.c:
(graphite_create_new_loop): Add calling of isl_id_free.
[gcc/testsuite]
* gcc.dg/graphite/isl-ast-gen
to add another one for that
change or ask for approval: such a fix is obvious.
Thank you for the comment!
--
Cheers, Roman Gareev.
It seems that the problem is solved now. Thank you! I've sent
corresponding patches to gcc-patches.
--
Cheers, Roman Gareev.
Yes, you need to use .create() to initialize vec instances.
Thank you for the answer!
--
Cheers, Roman Gareev.
I've attached the patch, which contains generation of Gimple code from
isl_ast_node_block. Is it fine for trunk?
--
Cheers, Roman Gareev.
2014-07-22 Roman Gareev gareevro...@gmail.com
gcc/
* graphite-isl-ast-to-gimple.c
I've attached the patch, which adds the extension of all schedules to
the maximal number of schedule dimensions. It is necessary for the
proper work of the isl AST generator. Is it fine for trunk?
--
Cheers, Roman Gareev.
2014-07-22 Roman Gareev gareevro
with vecT, A, vl_embed. Is there a way to use it with
vectree_node*?
I would be very grateful for your comments.
--
Cheers, Roman Gareev.
, but it is
difficult to find the reason of errors in them.
P.S. CLooG generates the same code for both examples:
CLAST generated by CLooG:
for (scat_1=0;scat_1=k.0_9-1;scat_1++) {
(scat_1);
}
();
--
Cheers, Roman Gareev.
Index: gcc/graphite-isl-ast-to-gimple.c
and 4294967296e0 = -1 + n.0 and 4294967296e0 = -4294967296 + n.0 and
4294967296e0 = -1 + n.0 - i0 and i0 = 2147483646) }
--
Cheers, Roman Gareev.
Maybe we should temporary postpone this and add a FIXME that says:
“We should remove iv_map.create (loop-num + 1), if it is possible.”
What do you think about this?
--
Cheers, Roman Gareev.
I've asked the community about this.
The patch below contains the FIXME.
--
Cheers, Roman Gareev.
2014-07-12 Roman Gareev gareevro...@gmail.com
gcc/
* graphite-isl-ast-to-gimple.c:
Add inclusion of gimple-ssa.h, tree-into-ssa.h
?
--
Cheers, Roman Gareev.
2014-07-20 Roman Gareev gareevro...@gmail.com
* configure.ac: Accept only CLooG 0.18.1.
* configure: Regenerate.
Index: configure
===
--- configure (revision
This patch fixes a formatting issue related to the number of
characters in the line. Is it fine for trunk?
--
Cheers, Roman Gareev.
2014-07-20 Roman Gareev gareevro...@gmail.com
gcc/
* graphite-isl-ast-to-gimple.c:
Fixes a formatting
improve this.
Sorry, I, probably, mixed something up. This function was used in the
attached patch without rewriting of other functions.
--
Cheers, Roman Gareev.
2014-07-12 Roman Gareev gareevro...@gmail.com
gcc/
* graphite-isl-ast-to-gimple.c
mode size. Tobias, what do you think about this?
--
Cheers, Roman Gareev
2014-07-08 Roman Gareev gareevro...@gmail.com
gcc/
* graphite-isl-ast-to-gimple.c:
Add using of build_nonstandard_integer_type instead
,
graphite_copy_stmts_from_block, rename_uses, chrec_apply_map. We'll
also have to rewrite declarations of iv_map in
graphite-clast-to-gimple.c in this case.
Please correct me, if I am wrong.
--
Cheers, Roman Gareev.
+= 1)
S_4(c1);
}
2014-07-12 Roman Gareev gareevro...@gmail.com
gcc/
* graphite-isl-ast-to-gimple.c:
Add inclusion of gimple-ssa.h, tree-into-ssa.h.
(ivs_params_clear):
(build_iv_mapping): New function.
(translate_isl_ast_node_user): Likewise
I've attached the patch, which adds the requirement for isl 0.12.
Tobias, is it important to accept only 0.12.1, 0.12.2 and forbid 0.12?
--
Cheers, Roman Gareev
2014-07-12 Roman Gareev gareevro...@gmail.com
* configure.ac: Don't accept isl 0.11
Could you prepare such a patch?
Yes, I've started working on it.
I have a question about isl. Can we require that isl is always
compiled with GMP support?
--
Cheers, Roman Gareev
and the abort function is called in case of inequality.) What do
you think about this?
--
Cheers, Roman Gareev.
2014-07-12 Roman Gareev gareevro...@gmail.com
gcc/
* graphite-isl-ast-to-gimple.c:
Add inclusion of gimple-ssa.h, tree-into-ssa.h
was added in version
0.12. Therefore, I think it would be right to demand on 0.12.
Tobias, what do you think about this? Is this fine for the backend,
which uses CLooG to generate Gimple code?
--
Cheers, Roman Gareev
you think
about this?
--
Cheers, Roman Gareev.
Hi Dominique,
thank you for the message! I've attached a patch, that may fix the issue.
Please report back if it fixes the problem.
--
Cheers, Roman Gareev.
Index: gcc/graphite-isl-ast-to-gimple.c
;
}
Do you know anything about this?
--
Cheers, Roman Gareev.
2014-07-12 Roman Gareev gareevro...@gmail.com
gcc/
* graphite-isl-ast-to-gimple.c:
Add inclusion of gimple-ssa.h, tree-into-ssa.h.
(ivs_params_clear):
Pass
, Roman Gareev.
Index: gcc/graphite-isl-ast-to-gimple.c
===
--- gcc/graphite-isl-ast-to-gimple.c(revision 212361)
+++ gcc/graphite-isl-ast-to-gimple.c(working copy)
@@ -25,7 +25,14 @@
#include isl/map.h
#include isl/union_map.h
, which is used for translation of
an isl_ast_node_user to Gimple code. Should we transfer it separately
or restore ivs_params later? What do you think?
--
Cheers, Roman Gareev.
I've attached an improved version of the patch and the ChangeLog
entry. Are they fine for trunk?
--
Cheers, Roman Gareev.
2014-07-11 Roman Gareev gareevro...@gmail.com
gcc/
* graphite-isl-ast-to-gimple.c (gmp_cst_to_tree):
New function
it in
the graphite-isl-ast-to-gimple.c?
Perfect! (or at least that's the same approach I have choosen for Polly)
Do you have any problems with this approach? From my perspective it
looks like a good solution.
No, I don't (at least for now).
--
Cheers, Roman Gareev
isl_ast_expr_get_val+0x50
60389: 75 0d jne60398 isl_ast_expr_get_val+0x18
I've attached the version, which uses map instead of hash table.
--
Cheers, Roman Gareev
Index: gcc/graphite-isl-ast-to-gimple.c
The ChangeLog should be per-function. Otherwise LGTM.
I've fixed this.
--
Cheers, Roman Gareev
2014-07-04 Roman Gareev gareevro...@gmail.com
gcc/
* graphite-isl-ast-to-gimple.c (generate_isl_context):
Add __isl_give
(name_expr) == isl_ast_expr_id);
isl_id *name_id = isl_ast_expr_get_id (name_expr);
poly_bb_p pbb = (poly_bb_p) isl_id_get_user (name_id);
(I'm getting this information, while we're handling isl_ast_node_user)
--
Cheers, Roman Gareev
Sorry, I was going to fix this. Thank you very much!
--
Cheers, Roman Gareev
This patch adds __isl_give to declarations of the following funcions:
generate_isl_context, generate_isl_schedule, scop_to_isl_ast
Is it fine for trunk?
--
Cheers, Roman Gareev
ChangeLog_entry
Description: Binary data
patch
Description: Binary data
.
--
Cheers, Roman Gareev
fixed it.
P.S.: I just wanted to let you know that your work is amazing. Almost
fully unsupervised you are always providing high-quality patches! I am
very impressed.
Thank you!
--
Cheers, Roman Gareev
Index: gcc/graphite-isl-ast-to-gimple.c
for
generation of isl_expr_int, because the error related to isl/val_gmp.h
still arises. I've tried to use isl 0.12.2 and 0.13, but gotten the
same error).
--
Cheers, Roman Gareev
Index: gcc/graphite-isl-ast-to-gimple.c
Thank you for the answer!
--
Cheers, Roman Gareev
.
--
Cheers, Roman Gareev
Dear gcc contributors,
could you please answer a few questions about unit tests? Is it
possible to use them in gcc? Or maybe there is some analogue? I would
be very grateful for your comments.
--
Cheers, Roman Gareev
, isl_ast_op_call,
isl_ast_op_member, isl_ast_op_access, isl_ast_op_pdiv_q,
isl_ast_op_pdiv_r, isl_ast_op_div, isl_ast_op_fdiv_q.
The first draft of generation of GCC expression trees from isl ast
expressions can be found below:
--
Cheers, Roman Gareev
patch
Description
DejaGnu test cases for these
expressions, which will possibly use the previous ones.
--
Cheers, Roman Gareev
Thank you for the review!
--
Cheers, Roman Gareev
ChangeLog_entry1
Description: Binary data
ChangeLog_entry2
Description: Binary data
patch1
Description: Binary data
patch2
Description: Binary data
by Roman Gareev gareevro...@gmail.com.
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 3, or (at your option)
+any later version.
+
+GCC
.
--
Cheers, Roman Gareev
ChangeLog_entry1
Description: Binary data
ChangeLog_entry2
Description: Binary data
patch1
Description: Binary data
patch2
Description: Binary data
? Where can I find the description of regular
expressions used in scan-tree-dump-times? I would be very grateful for
your comments.
--
Cheers, Roman Gareev
I used trunk and compiled these patches only with isl 0.12 and ClooG
0.18.1. Which versions of these libraries are need to be checked for
compatibility?
--
Cheers, Roman Gareev
with generation of ISL
AST, new switch, new testcase that checks that the dump is generated.
Is it fine for trunk?
P.S. My copyright assignment has been already processed.
--
Cheers, Roman Gareev
ChangeLog_entry1
Description: Binary data
ChangeLog_entry2
.
--
Cheers, Roman Gareev
patch
Description: Binary data
ChangeLog_entry
Description: Binary data
with generation of ISL AST easier to
maintain. I implemented it in the patch, which can be found below. You
can also find my post about my second task of the proposal at the
following link http://romangareev.blogspot.com/2014/05/gsoc-report-ii.html
--
Cheers, Roman
1 - 100 of 122 matches
Mail list logo