Results of `make check' in libstdc++-v3 in gcc mainline for FreeBSD
Loren James Rittle
rittle@latour.rsch.comm.mot.com
Tue Apr 25 19:36:00 GMT 2000
In article < 200004250555.AAA86950@latour.rsch.comm.mot.com >,
Loren James Rittle <rittle> writes:
> Including the four patches I just posted, here are the results for
> `make check' in libstdc++-v3 in gcc mainline for FreeBSD.
...
> pass/fail results: 68/1
...
Oops, the results aren't that rosy: mkcheck and FreeBSD disagreed as
to how to find a core dump situation. Wouldn't it be better to use
the standard [ba]sh mechanism ($? > 128 or just $? != 0) to check for
abnormal termination events? (A patch is included at the end of this
message.)
Here are the real results (with patch) [looks like more work is
required on the config/generic tree since 10 of the 12 run-time faults
occurred at config/generic/bits/ctype_specializations.h:40 - I will
work on that but won't get to it until next week]:
host: FreeBSD 3.4-STABLE FreeBSD 3.4-STABLE #1: Tue Mar 7 20:58:44 CST 2000 root@latour.rsch.comm.mot.com:/usr/src/sys/compile/LATOUR i386
compiler: 2.96
compiler flags: -g -DDEBUG_ASSERT -static
date: 20000425
pass/fail results: 56/13
p == pass/fail execution test
ctime == time to compile and link
etime == time for executable to run (take with salt)
text == size of the executable text section
data == size of the executable data section
total == size of the executable
p ctime etime text data total name
+ 0 0.003 32524 3248 54144 17_intro/header_ciso646.cc
+ 3 0.003 796 2372 111208 17_intro/header_fstream.cc
+ 2 0.003 796 2372 93065 17_intro/header_iomanip.cc
+ 2 0.003 796 2372 63654 17_intro/header_ios.cc
+ 0 0.003 796 2364 7242 17_intro/header_iosfwd.cc
+ 2 0.003 208519 8389 1530034 17_intro/header_iostream.cc
+ 2 0.003 796 2372 90648 17_intro/header_istream.cc
+ 1 0.003 796 2372 63736 17_intro/header_ostream.cc
+ 2 0.003 796 2372 91351 17_intro/header_sstream.cc
+ 2 0.003 796 2372 63516 17_intro/header_streambuf.cc
+ 8 0.003 208519 8389 1576932 17_intro/headers.cc
+ 1 0.003 50839 3844 196050 18_support/numeric_limits.cc
+ 3 0.004 65863 4480 381426 21_strings/append.cc
+ 5 0.003 72103 4192 382711 21_strings/capacity.cc
+ 2 0.003 56151 4096 288114 21_strings/char_traits.cc
+ 3 0.003 60599 4160 302288 21_strings/compare.cc
+ 3 0.004 61847 4192 315451 21_strings/ctor_copy_dtor.cc
+ 2 0.003 56871 4224 293420 21_strings/element_access.cc
+ 2 0.003 61399 4064 355816 21_strings/find.cc
+ 3 0.011 63975 4672 321364 21_strings/insert.cc
- 7 0.009 224903 10181 1706430 21_strings/inserters_extractors.cc
+ 3 0.003 64839 4224 319476 21_strings/invariants.cc
+ 3 0.003 69639 4224 324750 21_strings/nonmember.cc
+ 3 0.003 58071 4096 297597 21_strings/operations.cc
+ 3 0.003 63879 4160 324502 21_strings/replace.cc
+ 3 0.003 58279 4160 301927 21_strings/substr.cc
+ 3 0.003 209527 8485 1523204 22_locale/ctype.cc
- 3 0.009 210551 8709 1520436 22_locale/ctype_char_members.cc
+ 4 0.003 63735 4256 373489 23_containers/bitset_ctor.cc
+ 6 0.866 76407 4160 417817 23_containers/bitset_shift.cc
+ 4 0.000 215735 8389 1601592 23_containers/multiset.cc
+ 2 0.003 57991 3904 238571 23_containers/vector_capacity.cc
+ 5 0.012 238199 8581 1627418 23_containers/vector_ctor.cc
+ 2 0.003 63831 3904 281896 23_containers/vector_modifiers.cc
+ 5 0.003 216455 8997 1574788 24_iterators/istreambuf_iterator.cc
+ 6 0.003 82247 4064 473707 24_iterators/iterator.cc
+ 1 0.003 32825 3256 69054 25_algorithms/min_max.cc
+ 6 0.000 213239 8389 1650452 26_numerics/binary_closure.cc
+ 0 0.003 1209 2364 11076 26_numerics/buggy_complex.cc
+ 0 0.003 40411 4780 66746 26_numerics/c_math.cc
- 6 0.003 0 0 0 26_numerics/complex_inserters_extractors.cc
+ 3 0.003 50295 3736 208285 26_numerics/valarray.cc
- 5 0.000 220519 8933 1574347 27_io/filebuf.cc
+ 2 0.003 34879 3248 117642 27_io/fpos.cc
+ 4 0.003 214119 8901 1583700 27_io/ios_base_callbacks.cc
+ 3 0.003 212263 8837 1552178 27_io/ios_base_members_static.cc
+ 4 0.003 213911 8805 1578503 27_io/ios_ctor.cc
+ 6 777.000 215815 9029 1596421 27_io/ios_manip_basefield.cc
+ 6 0.000 216423 9061 1609721 27_io/ios_manip_fmtflags.cc
+ 3 0.004 212551 8709 1534490 27_io/ios_members.cc
+ 8 0.000 209015 8453 1601658 27_io/iostream_objects.cc
+ 0 0.003 796 2364 5400 27_io/istream.cc
- 7 0.009 222263 9829 1625122 27_io/istream_extractor_arith.cc
- 5 0.009 219255 9125 1594755 27_io/istream_extractor_char.cc
- 5 0.009 219063 9125 1600338 27_io/istream_extractor_other.cc
- 4 0.067 215367 9221 1610831 27_io/istream_manip.cc
- 5 0.009 212343 8901 1580411 27_io/istream_sentry.cc
- 7 0.010 235191 9765 1617292 27_io/istream_unformatted.cc
- 5 0.009 213415 9061 1568155 27_io/istringstream_members.cc
+ 0 0.003 796 2364 5400 27_io/ostream.cc
- 7 1.200 224839 9541 1640905 27_io/ostream_inserter_arith.cc
+ 7 0.169 222487 9637 1638713 27_io/ostream_inserter_char.cc
- 5 0.009 214487 9445 1597468 27_io/ostream_inserter_other.cc
+ 5 0.003 213303 8965 1589811 27_io/ostream_manip.cc
+ 4 0.003 211687 8997 1556620 27_io/ostream_unformatted.cc
+ 4 0.004 219751 9029 1569878 27_io/streambuf.cc
+ 6 0.004 229143 8997 1605467 27_io/stringbuf.cc
+ 6 0.004 216167 9381 1612367 27_io/stringstream.cc
+ 6 0.003 208519 8549 1603783 ext/headers.cc
2000-04-25 Loren J. Rittle <ljrittle@acm.org>
* mkcheck.in: Rely on exit status instead of the presence of a
core file. Added comments on how/where to save core and exe
files. Move shell wildcards outside quotes and fix core path.
Index: mkcheck.in
===================================================================
RCS file: /cvs/gcc/egcs/libstdc++-v3/mkcheck.in,v
retrieving revision 1.2
diff -p -r1.2 mkcheck.in
*** mkcheck.in 2000/04/25 07:41:28 1.2
--- mkcheck.in 2000/04/26 02:16:03
*************** if [ ! -x "$TEST_DIR/printnow" ]; then
*** 124,132 ****
fi
# Remove old executables.
! rm -rf "$TEST_DIR/*exe"
! rm -rf "$TEST_DIR/core" "$TEST_DIR/*core"
# Copy over the data files for filebufs in read-only mode
cp $SRC_DIR/testsuite/27_io/*.txt $TEST_DIR
cp $SRC_DIR/testsuite/27_io/*.tst $TEST_DIR
--- 124,134 ----
fi
# Remove old executables.
! rm -rf "$TEST_DIR"/*exe
+ # Remove old core files (which now get left in cwd, not $TEST_DIR).
+ rm -rf ./*core
+
# Copy over the data files for filebufs in read-only mode
cp $SRC_DIR/testsuite/27_io/*.txt $TEST_DIR
cp $SRC_DIR/testsuite/27_io/*.tst $TEST_DIR
*************** do
*** 202,217 ****
# Actually run the executable and time it . . .
TIMEFORMAT='timemark %R'
E_TIME_TEXT="$(exec 2>&1; time $ST_NAME)"
E_TIME="$(echo $E_TIME_TEXT | awk '{print $2}')"
# joining those two commands does not work due to quoting problems:
#E_TIME="$(exec 2>&1; time $ST_NAME | awk '{print $2}')"
# this will work as a fallback on certain systems...?
#E_TIME=$(exec 2>&1; time $ST_NAME | cut -d ' ' -f 2)
! if [ -f core ]; then
ST_EXEC='-'
echo "st_fail" | awk '{printf("\t%s\n", $1)}'
! rm core
else
# XXX this should probably be a function?
--- 204,224 ----
# Actually run the executable and time it . . .
TIMEFORMAT='timemark %R'
E_TIME_TEXT="$(exec 2>&1; time $ST_NAME)"
+ E_ABNORMAL_TERMINATION=$?
E_TIME="$(echo $E_TIME_TEXT | awk '{print $2}')"
# joining those two commands does not work due to quoting problems:
#E_TIME="$(exec 2>&1; time $ST_NAME | awk '{print $2}')"
# this will work as a fallback on certain systems...?
#E_TIME=$(exec 2>&1; time $ST_NAME | cut -d ' ' -f 2)
! if [ "$E_ABNORMAL_TERMINATION" -ne 0 ]; then
ST_EXEC='-'
echo "st_fail" | awk '{printf("\t%s\n", $1)}'
! rm -f ./*core
! # sometimes you want to save all core files for review:
! #mv ./core $ST_NAME.core
! # sometimes the OS names core files as programname.core:
! #mv ./*core $ST_NAME.core
else
# XXX this should probably be a function?
*************** do
*** 258,270 ****
rm $DIFF_FILE
done
else
! # the file does no output, and didn't core, so
! # assume passed.
ST_EXEC="+"
echo "st_pass" | awk '{printf("\t%s\t", $1)}'
fi
fi
rm "$ST_NAME"
else
# the file did not compile. Write out compilation info to the log file.
echo "$CXX $CXX_FLAG $ST_FLAG $INC_PATH $LIB_PATH $CNAME -o $ST_NAME" \
--- 265,281 ----
rm $DIFF_FILE
done
else
! # the file does no output, and didn't abnormally
! # terminate, so assume passed.
ST_EXEC="+"
echo "st_pass" | awk '{printf("\t%s\t", $1)}'
fi
fi
rm "$ST_NAME"
+ # sometimes you want to save all failing exe files for review:
+ #if [ "$ST_EXEC" = "+" ]; then
+ # rm "$ST_NAME"
+ #fi
else
# the file did not compile. Write out compilation info to the log file.
echo "$CXX $CXX_FLAG $ST_FLAG $INC_PATH $LIB_PATH $CNAME -o $ST_NAME" \
More information about the Libstdc++
mailing list