run.py (2997:d4f750d960e5) run.py (2998:1d5ea4e433f5)
1# Copyright (c) 2006 The Regents of The University of Michigan
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

--- 19 unchanged lines hidden (view full) ---

28
29import os, sys
30
31# single "path" arg encodes everything we need to know about test
32(category, name, isa, opsys, config) = sys.argv[1].split('/')
33
34# find path to directory containing this file
35tests_root = os.path.dirname(__file__)
1# Copyright (c) 2006 The Regents of The University of Michigan
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

--- 19 unchanged lines hidden (view full) ---

28
29import os, sys
30
31# single "path" arg encodes everything we need to know about test
32(category, name, isa, opsys, config) = sys.argv[1].split('/')
33
34# find path to directory containing this file
35tests_root = os.path.dirname(__file__)
36test_progs = os.path.join(tests_root, 'test-progs')
36
37
38# generate path to binary file
39def binpath(app, file=None):
40 # executable has same name as app unless specified otherwise
41 if not file:
42 file = app
43 return os.path.join(test_progs, app, 'bin', isa, opsys, file)
44
37# build configuration
38execfile(os.path.join(tests_root, config + '.py'))
39
40# set default maxtick... script can override
45# build configuration
46execfile(os.path.join(tests_root, config + '.py'))
47
48# set default maxtick... script can override
41maxtick = 1000000
49# -1 means run forever
50maxtick = -1
42
43# tweak configuration for specific test
44
45execfile(os.path.join(tests_root, category, name, 'test.py'))
46
47# instantiate configuration
48m5.instantiate(root)
49
50# simulate until program terminates
51exit_event = m5.simulate(maxtick)
52
53print 'Exiting @ tick', m5.curTick(), 'because', exit_event.getCause()
51
52# tweak configuration for specific test
53
54execfile(os.path.join(tests_root, category, name, 'test.py'))
55
56# instantiate configuration
57m5.instantiate(root)
58
59# simulate until program terminates
60exit_event = m5.simulate(maxtick)
61
62print 'Exiting @ tick', m5.curTick(), 'because', exit_event.getCause()