This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH 02/44] Avoid lang_hooks, call build_nonstandard_integer_type.
- From: Sebastian Pop <sebpop at gmail dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: gcc-graphite at googlegroups dot com
- Date: Thu, 30 Sep 2010 13:00:54 -0500
- Subject: [PATCH 02/44] Avoid lang_hooks, call build_nonstandard_integer_type.
- References: <1285869696-10915-1-git-send-email-sebpop@gmail.com>
From: spop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>
2010-07-29 Sebastian Pop <sebastian.pop@amd.com>
* graphite-clast-to-gimple.c (max_signed_precision_type): Remove the call
to lang_hooks.types.type_for_size. Call build_nonstandard_integer_type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/graphite@162702 138bc75d-0d04-0410-961f-82ee72b054a4
---
gcc/ChangeLog | 5 +++++
gcc/ChangeLog.graphite | 5 +++++
gcc/graphite-clast-to-gimple.c | 12 +++++++++++-
3 files changed, 21 insertions(+), 1 deletions(-)
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 8fed56b..b78ba82 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2010-09-30 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-clast-to-gimple.c (max_signed_precision_type): Remove the call
+ to lang_hooks.types.type_for_size. Call build_nonstandard_integer_type.
+
2010-09-30 Riyadh Baghdadi <baghdadi.mr@gmail.com>
* graphite-cloog-util.c (openscop_print_cloog_matrix): New.
diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite
index 50c1e13..dd37363 100644
--- a/gcc/ChangeLog.graphite
+++ b/gcc/ChangeLog.graphite
@@ -1,3 +1,8 @@
+2010-07-29 Sebastian Pop <sebastian.pop@amd.com>
+
+ * graphite-clast-to-gimple.c (max_signed_precision_type): Remove the call
+ to lang_hooks.types.type_for_size. Call build_nonstandard_integer_type.
+
2010-07-29 Riyadh Baghdadi <baghdadi.mr@gmail.com>
* graphite-cloog-util.c (openscop_print_cloog_matrix): New.
diff --git a/gcc/graphite-clast-to-gimple.c b/gcc/graphite-clast-to-gimple.c
index 3f26ad3..73bd971 100644
--- a/gcc/graphite-clast-to-gimple.c
+++ b/gcc/graphite-clast-to-gimple.c
@@ -201,19 +201,29 @@ max_signed_precision_type (tree type1, tree type2)
int p2 = TYPE_PRECISION (type2);
int precision;
tree type;
+ enum machine_mode mode;
if (p1 > p2)
precision = TYPE_UNSIGNED (type1) ? p1 * 2 : p1;
else
precision = TYPE_UNSIGNED (type2) ? p2 * 2 : p2;
- type = lang_hooks.types.type_for_size (precision, false);
+ if (precision > BITS_PER_WORD)
+ {
+ gloog_error = true;
+ return integer_type_node;
+ }
+
+ mode = smallest_mode_for_size (precision, MODE_INT);
+ precision = GET_MODE_PRECISION (mode);
+ type = build_nonstandard_integer_type (precision, false);
if (!type)
{
gloog_error = true;
return integer_type_node;
}
+
return type;
}
--
1.7.0.4