This is the mail archive of the gcc-bugs@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]

[Bug tree-optimization/39355] [4.4 Regression] Revision 144529: ICE due to missing or incorrectly relocated DECL_VALUE_EXPR in PCH header for PARM_DECL



------- Comment #45 from danglin at gcc dot gnu dot org  2009-03-22 18:34 -------
The testsuite fails disappear if I add --disable-libstdcxx-pch to the
configure command.  The ICE can be suppressed with

Index: dwarf2out.c
===================================================================
--- dwarf2out.c (revision 144988)
+++ dwarf2out.c (working copy)
@@ -10431,8 +10431,12 @@

     case PARM_DECL:
       if (DECL_HAS_VALUE_EXPR_P (loc))
-       return loc_descriptor_from_tree_1 (DECL_VALUE_EXPR (loc),
-                                          want_address);
+       {
+         tree loc1 = DECL_VALUE_EXPR (loc);
+
+         if (loc1 != NULL_TREE)
+           return loc_descriptor_from_tree_1 (loc1, want_address);
+       }
       /* FALLTHRU */

     case RESULT_DECL:

However, it is probably better to determine why the value expression
isn't found.

I looked at the PCH mapping.  The file appears to be correctly mapped
at the specified location and offset by the kernel.

There is some variation in the mapping location for stdc++.h.gch from
build to build.  However, I still don't know why slight changes to expr.o
affect the search for the value expression.


-- 

danglin at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[4.4 Regression] Revision   |[4.4 Regression] Revision
                   |144529 miscompiled          |144529: ICE due to missing
                   |libcpp/expr.c               |or incorrectly relocated
                   |                            |DECL_VALUE_EXPR in PCH
                   |                            |header for PARM_DECL


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39355


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