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

Re: [v3] make check-abi


On Fri, Aug 23, 2002 at 09:35:58AM -0700, Benjamin Kosnik wrote:
> 
> > Will you have a provision for baseline data that depends on how the
> > library is configured, e.g., thread support?
> 
> Not at the moment, although that might be something to look at in the future.

See comments below about why we should think about this now.

> > The tests in gcc/testsuite/consistency.vlad also need baseline files.
> > Have any of you looked at those to see if the same mechanism can be
> > used?  Once again, there are compiler options that affect the results,
> > so there should be a provision for multiple baselines per target.
> > 
> > Has anyone tried running the consistency.vlad tests recently?  I can run
> > them with hacks to various .exp files, but I don't yet understand the
> > tools well enough to know what I'm doing.  If someone is already fixing
> > these, great, otherwise I'll keep plugging along so we can start using
> > those tests.
> 
> I have no idea what to do with those tests. I'm primarily concerned with
> the library aspects of the C++ ABI. The compiler bits also need a full
> set of testing. I'm not quite sure who, if anyone, is working on that.

I'm working on that and am hoping that others will as well.

I'm close to having the consistency.vlad tests working.  There were some
changes to the testsuite a few months ago that broke them, and it turned
out to be fairly straightforward to fix the vlad.exp file.

The hard part is figuring out what to do with the baseline result files.
Many of the same issues apply to your library ABI tests, so it would
help to figure them out soon so we can use the same mechanism.

- How should the baseline results be identified?  The default could be
  $target_triplet, but sometimes it will need to be broken down further,
  as when someone wants to test consistency for special options that
  affect the test output.  There are ways to configure the library that
  change the results of your library tests, and there are also ways to
  compile that affect layout and alignment.  If these are common and
  should be checked, then people who want those baselines can determine
  names for them and define how they are built.  Similarly, there might
  be sets of baseline results that are expected to be identical even
  though $target_triplet is different.  For example, the 3.2 build
  status list includes powerpc-ibm-aix4.2.1.0, powerpc-ibm-aix4.3.2.0,
  powerpc-ibm-aix4.3.3.0, and powerpc-ibm-aix5.1.0.0.  I suspect that
  some or all of those could use the same baseline results for both the
  library tests and the compiler tests.

- How should the baseline results be stored?  For the layout tests in
  consistency.vlad, keeping a tarball would save a lot of space, which
  will be important when there are lots of sets of baseline results:

    laptop% !du
    du -s i686*
    1097    i686-pc-linux-gnu-results
    36      i686-pc-linux-gnu-results.tar.gz

  Could the test suite handle unpacking a needed tarball and leaving
  the others alone?

- How should the desired baseline results be specified?  Currently the
  consistency.vlad tests look for BASE_COMPILER (not a great name),
  which is part of the name of the directory containing the results.
  The default could be determined with configury magic, and could be
  used for the library tests as well as the compiler tests.

- Will we want compiler consistency tests for languages other than C++?
  If so, we'll need a better way to organize the consistency tests.

- Will we want a single make check target that covers both language and
  compiler consistency/ABI testing?

Janis


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