Hi,

This patch fixed lipo ICE triggered by an out-of-bound access.

This is google specific patch and tested with bootstrap and the
program exposed the issue.

Thanks,

-Rong
2014-05-08  Rong Xu  <x...@google.com>

        * tree-inline.c (add_local_variables): Check if the debug_expr
        is a decl_node before calling is_global_var.

Index: tree-inline.c
===================================================================
--- tree-inline.c       (revision 209291)
+++ tree-inline.c       (working copy)
@@ -3842,7 +3842,7 @@ add_local_variables (struct function *callee, stru
                of varpool node does not check the reference
                from debug expressions.
                Set it to 0 for all global vars.  */
-            if (L_IPO_COMP_MODE && tem && is_global_var (tem))
+            if (L_IPO_COMP_MODE && tem && DECL_P (tem) && is_global_var (tem))
               tem = NULL;
 
            id->remapping_type_depth++;

Reply via email to