This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: armv4l bootstrap problem in libstdc++-v3
- To: Rod Stewart <stewart at nexus dot carleton dot ca>
- Subject: Re: armv4l bootstrap problem in libstdc++-v3
- From: Richard Earnshaw <rearnsha at arm dot com>
- Date: Wed, 10 Jan 2001 14:07:27 +0000
- Cc: Benjamin Kosnik <bkoz at redhat dot com>, Jason Merrill <jason at redhat dot com>, Mark Mitchell <mark at codesourcery dot com>, nickc at redhat dot com, stewart at netwinder dot org, gcc-bugs at gcc dot gnu dot org, libstdc++ at gcc dot gnu dot org
- Cc: rearnsha at arm dot com
- Organization: ARM Ltd.
- Reply-To: rearnsha at arm dot com
It is with some reluctance that I am committing the following patch. My
reasons for doing so are as follows:
1) Building the ARM compiler has been broken because of this for over a
month now
2) There is no apparent sign that a patch for the C++ front end is
forthcoming from a C++ mainatiner, even though the bug lies there and not
in the ARM back-end.
3) I have insufficient understanding of the tree system to fix the front
end myself, or, given the anticipated time-scales for the release, time to
acquire that knowledge.
Given that we have a major release coming up, to remain in this state is
unacceptable. So I've decided that we will have to disable the XScale
builtins until such time as the problem is fixed -- at this point I
consider being able to build and install the C++ libraries more important
than supporting the newlib builds for Xscale (which I believe will now
fail as a result of this).
I have tried to produce, but have been unsuccessful, a test case which
causes a similar problem with one of the standard built-ins. This
probably means I still don't fully understand the failure fully.
Richard.
2001-01-10 Richard Earnshaw <rearnsha@arm.com>
* arm.c (arm_init_builtins): Temporarily disable xscale builtins.
Index: arm.c
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/arm/arm.c,v
retrieving revision 1.134
diff -p -r1.134 arm.c
*** arm.c 2001/01/09 01:08:53 1.134
--- arm.c 2001/01/10 13:44:10
*************** arm_debugger_arg_offset (value, addr)
*** 8789,8794 ****
--- 8789,8799 ----
void
arm_init_builtins ()
{
+ #if 0
+ /* The following code is NOT incorrect, but it trips a bug in the C++
+ front-end that causes a failure while building libstdc++-v3. When
+ that bug is fixed, this code can be re-enabled. */
+
tree endlink = tree_cons (NULL_TREE, void_type_node, NULL_TREE);
tree int_endlink = tree_cons (NULL_TREE, integer_type_node, endlink);
tree pchar_type_node = build_pointer_type (char_type_node);
*************** arm_init_builtins ()
*** 8816,8821 ****
--- 8821,8827 ----
def_builtin ("__builtin_prefetch", void_ftype_pchar,
ARM_BUILTIN_PREFETCH);
}
+ #endif
}
/* Expand an expression EXP that calls a built-in function,