1# Copyright (c) 2019 The Regents of the University of California. 2# All rights reserved. 3# 4# Redistribution and use in source and binary forms, with or without 5# modification, are permitted provided that the following conditions are 6# met: redistributions of source code must retain the above copyright 7# notice, this list of conditions and the following disclaimer; 8# redistributions in binary form must reproduce the above copyright 9# notice, this list of conditions and the following disclaimer in the 10# documentation and/or other materials provided with the distribution; 11# neither the name of the copyright holders nor the names of its 12# contributors may be used to endorse or promote products derived from 13# this software without specific prior written permission. 14# 15# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 16# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 17# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 18# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 19# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 20# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 21# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 22# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 23# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 24# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 25# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 26# 27# Authors: Jason Lowe-Power 28 29from testlib import * 30 31config_path = joinpath(config.base_dir, 'configs', 'learning_gem5', 'part2') 32ref_path = joinpath(getcwd(), 'ref') 33get_verifier = lambda file: verifier.MatchStdout(joinpath(ref_path, file)) 34 35gem5_verify_config( 36 name='run_simple_test', 37 verifiers = (get_verifier('simple'),), 38 config=joinpath(config_path, 'run_simple.py'), 39 config_args = [], 40 valid_isas=("NULL",), 41) 42 43gem5_verify_config( 44 name='hello_goodbye_test', 45 verifiers =(get_verifier('hello_goodbye'),), 46 config=joinpath(config_path, 'hello_goodbye.py'), 47 config_args = [], 48 valid_isas=("NULL",), 49) 50 51gem5_verify_config( 52 name='simple_memobj_test', 53 verifiers =(verifier.MatchStdoutNoPerf(joinpath(ref_path, 'hello')),), 54 config=joinpath(config_path, 'simple_memobj.py'), 55 config_args = [], 56 valid_isas=("X86",), # note: by default the above script uses x86 57) 58 59gem5_verify_config( 60 name='simple_cache_test', 61 verifiers =(verifier.MatchStdoutNoPerf(joinpath(ref_path, 'hello')),), 62 config=joinpath(config_path, 'simple_cache.py'), 63 config_args = [], 64 valid_isas=("X86",), # note: by default the above script uses x86 65) 66 67# Note: for simple memobj and simple cache I want to use the traffic generator 68# as well as the scripts above. 69 70 71