1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-26 07:11:34 -08:00
emacs/mps/test
Gareth Rees 1f95ffbe53 Tweak order of operations so that stack temporary doesn't keep many objects alive.
Copied from Perforce
 Change: 187953
 ServerID: perforce.ravenbrook.com
2015-06-16 10:44:09 +01:00
..
argerr Argerr testset now passes. 2015-06-15 22:21:52 +01:00
conerr Testsets/conerr now passes. 2015-06-15 22:59:14 +01:00
function Tweak order of operations so that stack temporary doesn't keep many objects alive. 2015-06-16 10:44:09 +01: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 Testsets/conerr now passes. 2015-06-15 22:59:14 +01:00
README Minor documentation improvements. 2014-10-26 12:44:58 +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
    CODE=../code # code directory of the branch you are testing
    make -C $CODE -f $PLATFORM.gmk VARIETY=cool $PLATFORM/cool/mps.o
    alias qa="perl test/qa -i $CODE -l $CODE/$PLATFORM/cool/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.