1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-29 00:31:01 -08:00
emacs/mps/test
Gareth Rees 9ffa6f2740 Add instructions for testing the hot variety.
Copied from Perforce
 Change: 189720
 ServerID: perforce.ravenbrook.com
2016-03-07 19:58:52 +00:00
..
argerr Change 189541 renamed the reg_scan_p parameter to mps_root_create_reg; update test cases accordingly. 2016-03-06 14:07:45 +00:00
conerr Avoid unusued variable warnings from clang 3.4.1. 2016-03-07 18:47:27 +00:00
function Move blatting to a function so that its local variables don't remain on the stack and pin down objects. 2016-03-07 17:31:55 +00:00
misc Long delayed maintenance of test suite: 2013-05-25 10:33:30 +01:00
test Use chomp instead of chop for lines read in from file handles: the last line read from a file does not necessarily have a newline. 2015-06-15 17:20:04 +01:00
testsets Some mmqa tests only work in the cool variety. segregate these into the "coolonly" testset. 2016-03-07 17:18:21 +00:00
README Add instructions for testing the hot variety. 2016-03-07 19:58:52 +00:00

$Id$

This is the Memory Management QA test harness. To use it you need
perl 5 (or higher). Go "perl qa help" for help, "perl qa options"
to see what version of the harness you have (or look at the
file "test/version").


Testing on Unix
---------------

From the test directory::

    PLATFORM=lii6ll # substitute your platform
    VARIETY=cool # or hot
    CODE=../code # code directory of the branch you are testing
    make -B -C $CODE -f $PLATFORM.gmk VARIETY=$VARIETY $PLATFORM/$VARIETY/mps.o
    alias qa="perl test/qa -i $CODE -l $CODE/$PLATFORM/$VARIETY/mps.o"
    qa clib
    qa run function/5.c
    qa runset testsets/passing

Each test case is compiled in its turn to the file
``test/obj/$(uname -s)_$(uname -r)_$(uname -p)__unix/tmp_test``
so you can debug it with::

    lldb test/obj/$(uname -s)_$(uname -r)_$(uname -p)__unix/tmp_test

Or ``gdb`` instead of ``lldb``. MMQA sets its own assertion handler,
so you'll probably want to set a breakpoint on mmqa_assert_handler.