This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: tree-ssa does not build on x86-64-linux
- From: Daniel Berlin <dberlin at dberlin dot org>
- To: Andreas Jaeger <aj at suse dot de>
- Cc: Diego Novillo <dnovillo at redhat dot com>,gcc-bugs at gcc dot gnu dot org
- Date: Wed, 12 Feb 2003 10:32:33 -0500
- Subject: Re: tree-ssa does not build on x86-64-linux
On Wednesday, February 12, 2003, at 10:00 AM, Andreas Jaeger wrote:
Andreas Jaeger <aj@suse.de> writes:
Go up a few times, and see what varray it is trying to mark.
How can I do that if -save-temps does not work?
Ok, I figured it out:
(gdb) bt
#0 fancy_abort (file=0x40bdee0d "gtype-desc.c", line=172,
function=0x40bdee1a "gt_ggc_mx_varray_head_tag")
at
/usr/src/aj/cvs/gcc-tree-ssa-20020619-branch/gcc/diagnostic.c:1369
#1 0x402d3464 in gt_ggc_mx_varray_head_tag (x_p=0x2a95dd8d00) at
gtype-desc.c:172
#2 0x402d31d3 in gt_ggc_mx_dataflow_d (x_p=0x2a95dd9640) at
gtype-desc.c:75
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^
means its one of the ones in struct dataflow_d.
If you go to frame 2 (just type "frame 2"), you should see exactly
which member it is trying to mark.
Though that's very odd, since the only ones left that i didn't mark to
skip aren't used.
Try this, it applies on top of the last patch.
Index: tree-flow.h
===================================================================
RCS file: /cvs/gcc/gcc/gcc/Attic/tree-flow.h,v
retrieving revision 1.1.4.54
diff -u -3 -p -r1.1.4.54 tree-flow.h
--- tree-flow.h 9 Feb 2003 04:45:18 -0000 1.1.4.54
+++ tree-flow.h 12 Feb 2003 15:29:05 -0000
@@ -122,7 +124,7 @@ struct dataflow_d GTY(())
includes statement #5 because 'a1' could reach 'a3' via the PHI
node
at statement #4. The set of REACHED_USES is then the transitive
closure over all the PHI nodes in the IMMEDIATE_USES set. */
- varray_type reached_uses;
+ varray_type GTY ((skip (""))) reached_uses;
/* Reaching definitions. Similarly to REACHED_USES, the set
REACHING_DEFS is the set of all the statements that make
definitions
@@ -130,7 +132,7 @@ struct dataflow_d GTY(())
similar entry for immediate definitions, as these are represented
by
the SSA_NAME nodes themselves (each SSA_NAME node contains a
pointer
to the statement that makes that definition). */
- varray_type reaching_defs;
+ varray_type GTY ((skip (""))) reaching_defs;
};
typedef struct dataflow_d *dataflow_t;
How can I figure out now which varray it is?
thanks for your help,
Andreas
--
Andreas Jaeger
SuSE Labs aj@suse.de
private aj@arthur.inka.de
http://www.suse.de/~aj