aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog.stackalign5
-rw-r--r--gcc/cfgexpand.c4
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog.stackalign b/gcc/ChangeLog.stackalign
index 194372ac82f..fab9a903d93 100644
--- a/gcc/ChangeLog.stackalign
+++ b/gcc/ChangeLog.stackalign
@@ -1,3 +1,8 @@
+2008-04-21 H.J. Lu <hongjiu.lu@intel.com>
+
+ * cfgexpand.c (expand_one_var): Don't collect stack alignment
+ on error_mark_node.
+
2008-04-19 H.J. Lu <hongjiu.lu@intel.com>
* cfgexpand.c (tree_expand_cfg): Initialize stack_alignment_used
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index aeecb21b6d5..5f6cef16c10 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -760,7 +760,9 @@ defer_stack_allocation (tree var, bool toplevel)
static HOST_WIDE_INT
expand_one_var (tree var, bool toplevel, bool really_expand)
{
- if (MAX_VECTORIZE_STACK_ALIGNMENT && TREE_CODE (var) == VAR_DECL)
+ if (MAX_VECTORIZE_STACK_ALIGNMENT
+ && TREE_TYPE (var) != error_mark_node
+ && TREE_CODE (var) == VAR_DECL)
{
unsigned int align;