This is the mail archive of the
mailing list for the GCC project.
RE: C++ ABI testing issues, gcc-3.3 <-> gcc-3.2 compatibility
- From: "Goodman, Joe" <joe dot goodman at intel dot com>
- To: Janis Johnson <janis187 at us dot ibm dot com>
- Cc: bkoz at redhat dot com, gcc at gcc dot gnu dot org, "Goodman, Joe" <joe dot goodman at intel dot com>, "Rao, Suresh K" <suresh dot k dot rao at intel dot com>
- Date: Thu, 22 Aug 2002 22:42:40 -0700
- Subject: RE: C++ ABI testing issues, gcc-3.3 <-> gcc-3.2 compatibility
Please see my answers to your questions below. We have recorded your
suggestions and will take them into account in our future ABI testing
Software Solutions Group
The views expressed in this message do not necessarily represent those of
From: Janis Johnson [mailto:firstname.lastname@example.org]
Sent: Wednesday, August 21, 2002 2:15 PM
To: Goodman, Joe
Cc: email@example.com; firstname.lastname@example.org
Subject: Re: C++ ABI testing issues, gcc-3.3 <-> gcc-3.2 compatibility
On Sun, Aug 04, 2002 at 10:20:12PM -0700, Goodman, Joe wrote:
> We provide a C++ ABI test suite you can download from
> http://developer.intel.com/software/products/opensource/. Please feel
> to download and run this suite.
> Joe Goodman
> Intel Corporation
> Software Solutions Group
I downloaded Intel's C++ ABI test suite and tried it with GCC 3.2 on
ia64-unknown-linux-gnu and i686-pc-linux-gnu. It's a great start; here
are some comments about how to make it better. I'm also sending this
information to Intel via the feedback link at the web page, as
requested in the test suite itself.
- The documentation doesn't really describe just what is being tested.
From the overview at your web site: "Intel is providing the C++ ABI
test suite on Linux. The tests contained in this test suite check a
C++ compiler for conformance with the C++ ABI." The C++ ABI has
generic specifications that apply to all platforms, and specific
specifications for Itanium. The test suite apparently is meant for
use on Itanium, since everything passes there but I got a lot of
failures on a Pentium III system.
- The config.mk file in the distribution doesn't match comments in the
README file about what belongs there. I removed the -D options from
CXXFLAGS and things didn't work at all, so a comment explaining why
they're needed would be useful.
- The test suite covers things at a very large granularity; if one check
in a test fails, then the entire test fails. That's probably OK for
getting an answer to "Does this compiler conform to the ABI?" but not
for "How close is my compiler to conforming to the ABI, and what do I
need to change to get there?". I changed abi-test.hpp so that
ABI_TEST wouldn't exit for a failure and got lots more information
about failures on i686-linux. Speaking of which, there's nothing in
the README or the web site about how to find out what failed, although
it wasn't difficult to figure out.
- Does Intel intend to add new tests as problems with the ABI are
uncovered, and for ABI issues with which specific compilers have had
problems, like the changes that went into GCC between 3.1.1 and 3.2?
>>> Yes, we do plan to add new tests to the suite.
- Each file says "All rights reserved" after Intel's copyright notice,
but it's accessible via a web page labeled "Open Source from Intel",
which sends mixed signals about what can be done with the tests. Does
Intel allow other people to modify and redistribute these tests? It
would be useful to have a version that applies to platforms that
follow the generic specifications of the C++ ABI, and to make that
available as a plug-in to the GCC test suite as is done now with the
Mauve test suite for Java. Would Intel allow that?
>>> The tests can be modified and redistributed if those tests are licensed
under the Intel 'open source / modified BSD license'.
The GCC community is discussing ways to test C++ compatibility from
release to release, and Intel's test suite could be a valuable part of
IBM Linux Technology Center