Many of the tasks created for Parrot's Google Code-Inn participants have
involved boosting the percentage of our source code touched by our test
suite. This had the secondary effect of focusing our attention on the
adequacy (or lack thereof) of our code coverage tools. What used to be
called 'make cover' exercises roughly the same set of tests as does
'make fulltest', so it has been renamed 'make fullcover'
(http://trac.parrot.org/parrot/ticket/1900). A shorter coverage target
(originally named 'make quickcover', now called 'make cover') has been
created in the hope that more coverage-driven testing and refactoring
will get done if coverage analysis is not so time-consuming
(http://trac.parrot.org/parrot/ticket/1893).
The question quickly arises: How does 'make cover' compare with 'make
fullcover'? You will find attached 3 plain-text files that help answer
this question.
a.identical.coverage.txt: Lists source code files whose statement
coverage from 'make fullcover' was the same as from 'make cover'.
b.different.coverage.txt: Lists source code files whose statement
coveragge from 'make fullcover' differed from that of 'make cover'.
c.fullonly.coverage.txt: Lists source code files which were covered
only by 'make fullcover'.
(There was nothing meaningful in the output for files covered only by
'make cover'.)
Evaluate.
Thank you very much.
kid51
compilers/imcc/cfg.c 92.1 92.1
compilers/imcc/imclexer.c 67.6 67.6
compilers/imcc/imcparser.c 70.0 70.0
compilers/imcc/optimizer.c 92.7 92.7
compilers/imcc/reg_alloc.c 89.8 89.8
compilers/imcc/sets.c 73.9 73.9
frontend/parrot_debugger/main.c 0.0 0.0
frontend/pbc_merge/main.c 83.4 83.4
src/call/args.c 76.2 76.2
src/call/context.c 86.3 86.3
src/call/context_accessors.c 94.9 94.9
src/call/ops.c 93.9 93.9
src/call/pcc.c 84.1 84.1
src/core_pmcs.c 100.0 100.0
src/datatypes.c 76.5 76.5
src/dynext.c 75.9 75.9
src/dynpmc/dynlexpad.c 0.0 0.0
src/dynpmc/dynlexpad.pmc 0.0 0.0
src/dynpmc/foo.c 88.6 88.6
src/dynpmc/foo.pmc 11.1 11.1
src/dynpmc/foo2.c 86.9 86.9
src/dynpmc/foo2.pmc 0.0 0.0
src/dynpmc/foo_group.c 100.0 100.0
src/dynpmc/gziphandle.pmc 0.0 0.0
src/dynpmc/pccmethod_test.c 0.0 0.0
src/dynpmc/pccmethod_test.pmc 0.0 0.0
src/dynpmc/rational.c 0.0 0.0
src/dynpmc/rational.pmc 0.0 0.0
src/dynpmc/rotest.c 0.0 0.0
src/dynpmc/rotest.pmc 0.0 0.0
src/dynpmc/subproxy.c 0.0 0.0
src/dynpmc/subproxy.pmc 0.0 0.0
src/exit.c 100.0 100.0
src/extra_nci_thunks.c 0.0 0.0
src/global_setup.c 90.6 90.6
src/glut_callbacks.c 0.0 0.0
src/glut_nci_thunks.c 0.0 0.0
src/hash.c 80.7 80.7
src/hll.c 91.2 91.2
src/interp/inter_cb.c 85.7 85.7
src/library.c 96.4 96.4
src/list.c 0.0 0.0
src/multidispatch.c 80.8 80.8
src/namespace.c 96.8 96.8
src/nci/api.c 56.5 56.5
src/nci/core_thunks.c 35.1 35.1
src/nci/libffi.c 4.5 4.5
src/nci/signatures.c 83.9 83.9
src/nci_test.c 97.5 97.5
src/null_config.c 42.9 42.9
src/packfile/byteorder.h 2.9 2.9
src/packfile/object_serialization.c 88.4 88.4
src/packfile/output.c 88.9 88.9
src/packfile/pf_items.c 55.9 55.9
src/pmc.c 81.6 81.6
src/pmc/arrayiterator.c 100.0 100.0
src/pmc/arrayiterator.pmc 100.0 100.0
src/pmc/bigint.c 87.6 87.6
src/pmc/bigint.pmc 91.8 91.8
src/pmc/bignum.c 93.3 93.3
src/pmc/bignum.pmc 89.5 89.5
src/pmc/boolean.c 100.0 100.0
src/pmc/boolean.pmc 100.0 100.0
src/pmc/bytebuffer.c 100.0 100.0
src/pmc/bytebuffer.pmc 100.0 100.0
src/pmc/capture.c 92.5 92.5
src/pmc/class.c 97.2 97.2
src/pmc/complex.c 94.2 94.2
src/pmc/complex.pmc 97.1 97.1
src/pmc/continuation.c 94.8 94.8
src/pmc/continuation.pmc 82.0 82.0
src/pmc/coroutine.c 100.0 100.0
src/pmc/eval.c 100.0 100.0
src/pmc/eval.pmc 92.6 92.6
src/pmc/eventhandler.c 97.5 97.5
src/pmc/eventhandler.pmc 89.7 89.7
src/pmc/exception.c 99.3 99.3
src/pmc/exceptionhandler.c 98.9 98.9
src/pmc/exceptionhandler.pmc 95.2 95.2
src/pmc/exporter.c 100.0 100.0
src/pmc/exporter.pmc 100.0 100.0
src/pmc/filehandle.c 97.9 97.9
src/pmc/fixedbooleanarray.c 100.0 100.0
src/pmc/fixedbooleanarray.pmc 99.1 99.1
src/pmc/fixedintegerarray.c 100.0 100.0
src/pmc/fixedintegerarray.pmc 100.0 100.0
src/pmc/fixedpmcarray.c 100.0 100.0
src/pmc/fixedpmcarray.pmc 97.0 97.0
src/pmc/fixedstringarray.c 100.0 100.0
src/pmc/fixedstringarray.pmc 100.0 100.0
src/pmc/float.c 94.6 94.6
src/pmc/float.pmc 94.9 94.9
src/pmc/handle.c 100.0 100.0
src/pmc/handle.pmc 100.0 100.0
src/pmc/hashiterator.c 100.0 100.0
src/pmc/hashiterator.pmc 100.0 100.0
src/pmc/hashiteratorkey.c 100.0 100.0
src/pmc/hashiteratorkey.pmc 100.0 100.0
src/pmc/imageiofreeze.c 97.7 97.7
src/pmc/imageiostrings.c 95.1 95.1
src/pmc/imageiostrings.pmc 85.0 85.0
src/pmc/imageiothaw.c 100.0 100.0
src/pmc/imageiothaw.pmc 95.9 95.9
src/pmc/iterator.c 98.8 98.8
src/pmc/iterator.pmc 91.7 91.7
src/pmc/key.c 97.2 97.2
src/pmc/key.pmc 91.1 91.1
src/pmc/lexinfo.c 100.0 100.0
src/pmc/lexinfo.pmc 100.0 100.0
src/pmc/lexpad.c 100.0 100.0
src/pmc/lexpad.pmc 100.0 100.0
src/pmc/managedstruct.c 100.0 100.0
src/pmc/managedstruct.pmc 86.7 86.7
src/pmc/mappedbytearray.c 100.0 100.0
src/pmc/mappedbytearray.pmc 96.4 96.4
src/pmc/multisub.c 89.7 89.7
src/pmc/multisub.pmc 29.4 29.4
src/pmc/namespace.c 100.0 100.0
src/pmc/namespace.pmc 98.4 98.4
src/pmc/nativepccmethod.c 96.1 96.1
src/pmc/nativepccmethod.pmc 66.7 66.7
src/pmc/object.pmc 83.8 83.8
src/pmc/opcode.c 100.0 100.0
src/pmc/opcode.pmc 92.9 92.9
src/pmc/oplib.c 97.6 97.6
src/pmc/oplib.pmc 83.7 83.7
src/pmc/orderedhash.c 95.5 95.5
src/pmc/orderedhash.pmc 90.6 90.6
src/pmc/orderedhashiterator.c 100.0 100.0
src/pmc/orderedhashiterator.pmc 100.0 100.0
src/pmc/packfile.c 98.0 98.0
src/pmc/packfileannotation.c 96.7 96.7
src/pmc/packfileannotation.pmc 74.2 74.2
src/pmc/packfileannotations.c 98.8 98.8
src/pmc/packfileannotations.pmc 88.6 88.6
src/pmc/packfileconstanttable.c 99.2 99.2
src/pmc/packfileconstanttable.pmc 94.9 94.9
src/pmc/packfiledebug.c 95.9 95.9
src/pmc/packfiledebug.pmc 65.9 65.9
src/pmc/packfiledirectory.c 100.0 100.0
src/pmc/packfiledirectory.pmc 95.7 95.7
src/pmc/packfilerawsegment.c 91.3 91.3
src/pmc/packfilerawsegment.pmc 88.6 88.6
src/pmc/packfilesegment.c 96.2 96.2
src/pmc/packfilesegment.pmc 75.0 75.0
src/pmc/parrotinterpreter.pmc 81.4 81.4
src/pmc/parrotlibrary.c 97.3 97.3
src/pmc/parrotlibrary.pmc 73.7 73.7
src/pmc/parrotthread.c 96.4 96.4
src/pmc/parrotthread.pmc 77.8 77.8
src/pmc/pmcproxy.c 98.1 98.1
src/pmc/pointer.c 90.6 90.6
src/pmc/pointer.pmc 23.5 23.5
src/pmc/resizablebooleanarray.c 100.0 100.0
src/pmc/resizablebooleanarray.pmc 99.2 99.2
src/pmc/resizablefloatarray.c 100.0 100.0
src/pmc/resizablefloatarray.pmc 100.0 100.0
src/pmc/resizableintegerarray.c 100.0 100.0
src/pmc/resizableintegerarray.pmc 100.0 100.0
src/pmc/resizablepmcarray.c 100.0 100.0
src/pmc/resizablepmcarray.pmc 100.0 100.0
src/pmc/resizablestringarray.c 100.0 100.0
src/pmc/resizablestringarray.pmc 100.0 100.0
src/pmc/role.c 88.0 88.0
src/pmc/role.pmc 48.9 48.9
src/pmc/scheduler.pmc 65.5 65.5
src/pmc/schedulermessage.c 98.9 98.9
src/pmc/schedulermessage.pmc 84.4 84.4
src/pmc/sockaddr.c 96.9 96.9
src/pmc/sockaddr.pmc 66.7 66.7
src/pmc/socket.c 90.0 90.0
src/pmc/socket.pmc 47.5 47.5
src/pmc/string.c 98.5 98.5
src/pmc/stringbuilder.c 100.0 100.0
src/pmc/stringbuilder.pmc 100.0 100.0
src/pmc/stringhandle.c 100.0 100.0
src/pmc/stringhandle.pmc 100.0 100.0
src/pmc/stringiterator.c 100.0 100.0
src/pmc/stringiterator.pmc 100.0 100.0
src/pmc/sub.pmc 93.4 93.4
src/pmc/task.c 100.0 100.0
src/pmc/task.pmc 98.5 98.5
src/pmc/threadinterpreter.c 100.0 100.0
src/pmc/threadinterpreter.pmc 100.0 100.0
src/pmc/timer.c 95.3 95.3
src/pmc/timer.pmc 80.0 80.0
src/pmc/undef.c 95.7 95.7
src/pmc/undef.pmc 85.3 85.3
src/runcore/cores.c 71.5 71.5
src/scheduler.c 68.1 68.1
src/spf_render.c 80.6 80.6
src/string/encoding.c 75.3 75.3
src/string/encoding/ucs2.c 100.0 100.0
src/string/encoding/ucs4.c 100.0 100.0
src/string/encoding/utf16.c 100.0 100.0
src/string/encoding/utf8.c 100.0 100.0
src/thread.c 59.4 59.4
src/vtables.c 93.8 93.8
src/warnings.c 73.5 73.5
Total 63.6 59.9
compilers/imcc/debug.c 23.9 19.4
compilers/imcc/imc.c 97.4 96.1
compilers/imcc/imcc.l 93.0 92.5
compilers/imcc/imcc.y 94.9 93.3
compilers/imcc/instructions.c 89.1 83.4
compilers/imcc/main.c 56.5 47.0
compilers/imcc/parser_util.c 87.2 86.1
compilers/imcc/pbc.c 94.5 93.4
compilers/imcc/pcc.c 91.1 90.8
compilers/imcc/symreg.c 80.8 78.5
frontend/parrot/main.c 64.1 44.0
frontend/pbc_dump/main.c 33.6 0.0
frontend/pbc_dump/packdump.c 50.4 0.0
src/debug.c 16.2 5.8
src/dynoplibs/bit_ops.c 22.2 1.5
src/dynoplibs/debug_ops.c 21.2 0.0
src/dynoplibs/io_ops.c 33.9 5.7
src/dynoplibs/math_ops.c 45.6 0.0
src/dynoplibs/obscure_ops.c 40.7 0.0
src/dynoplibs/sys_ops.c 42.2 9.9
src/dynoplibs/trans_ops.c 62.4 0.0
src/dynpmc/file.c 85.0 83.8
src/dynpmc/file.pmc 20.0 10.9
src/dynpmc/gziphandle.c 87.2 0.0
src/dynpmc/os.c 83.3 82.4
src/dynpmc/os.pmc 32.6 21.2
src/embed.c 53.6 19.2
src/embed/api.c 67.4 53.6
src/embed/pmc.c 95.3 17.2
src/embed/strings.c 96.4 21.4
src/exceptions.c 62.9 56.5
src/extend.c 65.5 12.7
src/extend_vtable.c 6.1 0.0
src/install_config.c 0.0 n/a
src/interp/inter_create.c 97.0 87.3
src/interp/inter_misc.c 50.4 43.8
src/key.c 67.0 69.3
src/longopt.c 79.3 65.5
src/misc.c 88.9 87.0
src/nci/extra_thunks.c 32.4 31.3
src/oo.c 90.8 90.6
src/ops/core_ops.c 61.4 59.5
src/packfile/api.c 92.0 83.9
src/parrot_config.c 42.9 n/a
src/pbc_disassemble.c 27.7 0.0
src/pmc/addrregistry.c 97.7 95.3
src/pmc/addrregistry.pmc 83.9 75.0
src/pmc/callcontext.c 96.8 95.8
src/pmc/callcontext.pmc 87.9 87.8
src/pmc/capture.pmc 77.0 76.5
src/pmc/class.pmc 89.1 89.4
src/pmc/coroutine.pmc 85.9 81.2
src/pmc/default.c 33.0 32.8
src/pmc/default.pmc 47.9 47.1
src/pmc/env.c 79.3 78.2
src/pmc/env.pmc 100.0 96.1
src/pmc/exception.pmc 95.3 94.9
src/pmc/filehandle.pmc 81.0 81.7
src/pmc/fixedfloatarray.c 100.0 98.4
src/pmc/fixedfloatarray.pmc 100.0 97.2
src/pmc/hash.c 97.6 97.2
src/pmc/hash.pmc 78.8 78.5
src/pmc/imageiofreeze.pmc 95.1 94.1
src/pmc/imageiosize.c 95.5 93.3
src/pmc/imageiosize.pmc 94.2 88.5
src/pmc/integer.c 93.1 92.8
src/pmc/integer.pmc 99.0 96.0
src/pmc/nci.c 95.4 94.3
src/pmc/nci.pmc 84.3 78.6
src/pmc/null.c 34.8 34.9
src/pmc/null.pmc 100.0 87.5
src/pmc/object.c 39.2 34.6
src/pmc/packfile.pmc 96.7 98.3
src/pmc/parrotinterpreter.c 91.1 89.9
src/pmc/pmcproxy.pmc 90.0 88.2
src/pmc/scalar.c 80.5 77.9
src/pmc/scalar.pmc 63.6 62.6
src/pmc/scheduler.c 90.9 89.1
src/pmc/string.pmc 94.4 93.8
src/pmc/sub.c 96.8 96.3
src/pmc/unmanagedstruct.c 94.4 93.5
src/pmc/unmanagedstruct.pmc 84.4 84.0
src/pointer_array.c 98.1 96.2
src/runcore/main.c 95.5 94.5
src/runcore/profiling.c 76.5 5.3
src/runcore/trace.c 25.5 23.1
src/spf_vtable.c 58.6 55.6
src/string/api.c 89.9 79.5
src/sub.c 82.6 67.4
src/utils.c 97.9 82.2
...twork/parrot/tools/build/../../lib/Parrot/Pmc2c/PCCMETHOD.pm 100.0
/usr/include/gmp.h 0.0
ops2c.c 33.3
parrot-nqp.c 33.3
parrot_config.c 33.3
parrot_nci_thunk_gen.c 33.3
pbc_to_exe.c 33.3
src/gc/alloc_memory.c 83.7
src/gc/alloc_resources.c 0.0
src/gc/api.c 83.3
src/gc/fixed_allocator.c 100.0
src/gc/gc_inf.c 0.0
src/gc/gc_ms.c 3.0
src/gc/gc_ms2.c 91.9
src/gc/mark_sweep.c 13.3
src/gc/string_gc.c 93.6
src/gc/system.c 67.8
src/io/api.c 81.6
src/io/buffer.c 86.8
src/io/core.c 88.5
src/io/filehandle.c 100.0
src/io/socket_api.c 30.5
src/io/socket_unix.c 29.1
src/io/unix.c 72.6
src/io/utf8.c 89.6
src/string/encoding/ascii.c 66.7
src/string/encoding/binary.c 69.2
src/string/encoding/latin1.c 64.3
src/string/encoding/null.c 80.0
src/string/encoding/shared.c 91.7
_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev