This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [GSoC] generation of GCC expression trees from isl ast expressions


Hi Tobias,

I haven't found out how to use unit tests in gcc. I've asked community
about this. Maybe it is better to postpone testing using DejaGnu tests
until generation of loops with empty bodies is finished, because we
have to traverse isl ast to transform expressions anyway. What do you
think about this?

I've written the following functions to compare the semantics of the
GCC and isl expressions: isl_ast_bin_expression_comp_test and
graphite_bin_expression_comp_test. graphite_bin_expression_comp_test
compares the result of evaluation of binary tree expression of the
given type with the given assumed result.
isl_ast_bin_expression_comp_test the result of evaluation of binary
isl_ast_expression with the given assumed result. They are called
after âif (dump_file && (dump_flags & TDF_DETAILS))Â and can be
eliminated in the future. However, it seems that it is impossible to
verify all types of isl_ast_expression, because only add, sub, mul,
div, and, or can be generated. If I am not mistaken, there is a
possibility of generation of any isl_ast_expression using
isl_ast_epxr_alloc_binary, but it is missing in isl_ast.h. Could you
please advise me what can be done in this situation?

I've rewritten the generation of isl_ast_expr_int, but after
successful building of gcc the following error arises:

/home/roman/compiled/build/graphite8/libexec/gcc/x86_64-unknown-linux-gnu/4.10.0/cc1plus:
symbol lookup error:
/home/roman/compiled/build/graphite8/libexec/gcc/x86_64-unknown-linux-gnu/4.10.0/cc1plus:
undefined symbol: isl_val_from_gmp

Do you know anything about this mistake? Should I use something
undocumented in isl manual, but important for Graphite like
+#if defined(__cplusplus)
+extern "C" {
+#endif
+#include <isl/val_gmp.h>
+#if defined(__cplusplus)
+}
+#endif

I have to write the code above to use isl_val_get_num_gmp from isl/val_gmp.h.

--
                                   Cheers, Roman Gareev

Attachment: patch.txt
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]