Commit df0f6750 authored by Paul E. McKenney's avatar Paul E. McKenney
Browse files

tools/memory-model: Add checktheselitmus.sh to run specified litmus tests



This commit adds a checktheselitmus.sh script that runs the litmus tests
specified on the command line.  This is useful for verifying fixes to
specific litmus tests.

Signed-off-by: default avatarPaul E. McKenney <paulmck@kernel.org>
parent a4deb29a
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -27,6 +27,14 @@ checklitmushist.sh
checklitmus.sh

	Check a single litmus test against its "Result:" expected result.
	Not intended to for manual use.

checktheselitmus.sh

	Check the specified list of litmus tests against their "Result:"
	expected results.  This takes optional parseargs.sh arguments,
	followed by "--" followed by pathnames starting from the current
	directory.

cmplitmushist.sh

+43 −0
Original line number Diff line number Diff line
#!/bin/sh
# SPDX-License-Identifier: GPL-2.0+
#
# Invokes checklitmus.sh on its arguments to run the specified litmus
# test and pass judgment on the results.
#
# Usage:
#	checktheselitmus.sh -- [ file1.litmus [ file2.litmus ... ] ]
#
# Run this in the directory containing the memory model, specifying the
# pathname of the litmus test to check.  The usual parseargs.sh arguments
# can be specified prior to the "--".
#
# This script is intended for use with pathnames that start from the
# tools/memory-model directory.  If some of the pathnames instead start at
# the root directory, they all must do so and the "--destdir /" parseargs.sh
# argument must be specified prior to the "--".  Alternatively, some other
# "--destdir" argument can be supplied as long as the needed subdirectories
# are populated.
#
# Copyright IBM Corporation, 2018
#
# Author: Paul E. McKenney <paulmck@linux.ibm.com>

. scripts/parseargs.sh

ret=0
for i in "$@"
do
	if scripts/checklitmus.sh $i
	then
		:
	else
		ret=1
	fi
done
if test "$ret" -ne 0
then
	echo " ^^^ VERIFICATION MISMATCHES" 1>&2
else
	echo All litmus tests verified as was expected. 1>&2
fi
exit $ret