From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vladimir Makarov To: Jakub Jelinek Cc: law@redhat.com, Franz Sirl , Mark Mitchell , gcc@gcc.gnu.org, "Kevin B. Hendricks" Subject: Re: GCC 3.2 Date: Mon, 12 Aug 2002 13:14:00 -0000 Message-id: <3D581725.73033FCD@redhat.com> References: <200207271635.12319@enzo.bigblue.local> <200208121551.g7CFpL804523@porcupine.slc.redhat.com> <20020812180910.K18963@sunsite.ms.mff.cuni.cz> X-SW-Source: 2002-08/msg00680.html Jakub Jelinek wrote: > > On Mon, Aug 12, 2002 at 09:51:21AM -0600, Jeff Law wrote: > > In message <200207271635.12319@enzo.bigblue.local>, Franz Sirl writes: > > >On Samstag, 27. Juli 2002 00:50, Mark Mitchell wrote: > > >> I have created the GCC 3.2 branch. > > >> > > >> Once Jakub indicates that the ABI patchset has been checked in, I will > > >> start rolling the 3.2 prerelease. > > > > > [ ... ] > > > > >Another thing, Kevin Hendricks, one of the OpenOffice developers, sent me a > > >short test program with all the alignment stuff the OO people had to change > > >between 2.9x and 3.x. Would some of the C++ people take a close look at this > > >code? Note that the current ABI patches fixed already 2 problems the OO > > >people had to workaround with gcc-3.1, so maybe the others are ABI bugs as > > >well? > > This reminds me of another ABI testing infrastructure we could build out. > > > > Many many years ago Cygnus wrote some patches for a customer which allowed > > GCC to dump out various things like size/offset information for structure > > members. > > You mean gcc/testsuite/consistency.vlad stuff? > I've run that on various compilers, the > only thing which was different between 3.3 20020803 and 3.2 20020803 was > __alignof__ of top level objects, but it did not catch e.g. the bitfield > layout problems. > > IMHO it would be better to write a layout test generator, using all > combinations for the simpler tests and pick some hundreds tests at random for > more complicated tests. Actually, the tests were generated and they were generated according to your proposal. There are lot of combinations for bitfields, therefore they were chosen randomly. The customer wanted more therefore tests from all customer's system structures (several millions C++ lines) were generated too. They can not be added because it requires proprietary code. The test generator was written on compiler-compiler named Gentle 4-4.5 years ago. I think the approach could be useful and we could use gcc front-end to generate tests from big and important programs. Another approach could be generation of tests taking all GCC memory allocation macros into account. The tests in consistency.vlad were written according "black box" approach. The testsuite can be divided on two parts: 1. dejagnu code 2. and the tests themselves. The first part is still flexible and could be used without changes for new tests. Vlad