summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2019-12-09tests: AArch64 Linux as quick regressions (instead of AArch32)Giacomo Travaglini
NOTE: Following the discussion on the current patch review, some regressions have been moved to the long list (realview64-simple-atomic and realview64-simple-timing) in order to reduce computation time. These should be moved back to the quick list as soon as we get more computing power. Change-Id: I07b98c968ad35bf4c7b3646cb72d870e6b07b0d6 Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22686 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
2019-12-09tests: Increase jenkins test timeout to 4 hours.Rahul Thakur
Change-Id: I11d36a429254df01a46040325baff5b7d18e22b3 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/23463 Reviewed-by: Bobby R. Bruce <bbruce@ucdavis.edu> Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Maintainer: Bobby R. Bruce <bbruce@ucdavis.edu> Tested-by: kokoro <noreply+kokoro@google.com>
2019-12-06arch-riscv: fix asmtest concurrent issues.Xin Ouyang
riscv asmtest uses multiprocessing.Pool to run multiple gem5 processes concurrently. By using gem5 default options, processes will fail because: - accessing to the same m5out directory - listening too many remote gdb ports at the same time This will set independent m5out directories and disable remote gdb ports for asmtest gem5 processes. Change-Id: Ie4c81232210568cd1945adc2b99eebc019d705b6 Signed-off-by: Xin Ouyang <xin.ouyang@streamcomputing.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22863 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-by: Alec Roelke <alec.roelke@gmail.com> Maintainer: Jason Lowe-Power <jason@lowepower.com> Tested-by: kokoro <noreply+kokoro@google.com>
2019-11-14tests: Specify a non-default root folder for regressionsGiacomo Travaglini
The new testlib library is looking for regressions walking from a root folder. This by default points to the tests dir. Since all regressions are supposed to live in the tests/gem5 subdir, the patch is assigning the gem5 subdir as a root directory. This will prevent the example garbage to be printed in the ci framework: Exception thrown while loading "/tmpfs/src/git/jenkins-gem5-prod/tests/long/fs/10.linux-boot/test.py" Ignoring all tests in this file. Exception thrown while loading "/tmpfs/src/git/jenkins-gem5-prod/tests/long/fs/80.solaris-boot/test.py" Ignoring all tests in this file. [...] Change-Id: Ia12c6bbeda4ceac71ccd38156ab1e3bb98b05c89 Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22726 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com> Tested-by: kokoro <noreply+kokoro@google.com>
2019-11-12tests: Using super in arm_generic whenever possibleGiacomo Travaglini
This exclude the case where multiple inheritance is used. Change-Id: Id1a46ca5c6c526a1a29a2cff7b00d7e3b6a79273 Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22685 Reviewed-by: Bobby R. Bruce <bbruce@ucdavis.edu> Maintainer: Bobby R. Bruce <bbruce@ucdavis.edu> Tested-by: kokoro <noreply+kokoro@google.com>
2019-11-12tests: Using super for calling superclass __init__Giacomo Travaglini
Change-Id: I19906db9ce1b9ffb4107b47fe2bc64a8e005e776 Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22684 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-by: Bobby R. Bruce <bbruce@ucdavis.edu> Maintainer: Jason Lowe-Power <jason@lowepower.com> Maintainer: Bobby R. Bruce <bbruce@ucdavis.edu> Tested-by: kokoro <noreply+kokoro@google.com>
2019-11-12tests: Remove Noncoherent cache from regressionsGiacomo Travaglini
Change-Id: I1d499477acec09fd0b36e3b7c2f5eecee737bd93 Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22683 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-by: Bobby R. Bruce <bbruce@ucdavis.edu> Maintainer: Jason Lowe-Power <jason@lowepower.com> Tested-by: kokoro <noreply+kokoro@google.com>
2019-11-01tests: add squashfs make to m5-exitCiro Santilli
An ARM squashfs rootfs that runs m5 exit can be generated for example with: make ARCH=arm_A64 CROSS_COMPILE=aarch64-linux-gnu- squashfs The existing Makefile.x86 was not used as a basis because we would like to provide a setup that allows users to use their own compilers if they wish, without requiring dockcross. Change-Id: I19c54cf0575b405f191f45aaf1e4a05c3f2e69ae Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22223 Reviewed-by: Bobby R. Bruce <bbruce@ucdavis.edu> Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com> Tested-by: kokoro <noreply+kokoro@google.com>
2019-10-31cpu-o3,tests: add page boundary access testBrandon Potter
The O3 model supports unaligned accesses across page boundaries. This changeset provides a stress test for the feature. Other benchmarks exercise it, but their coverage is spotty. This test does nothing else except poke bytes which straddle page boundaries. Change-Id: Ic20c2862bcb7af7be091030c12916ba499db10c7 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22303 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2019-10-31mem-ruby: Fixed pipeline squashes caused by aliased requestsJoe Gross
This patch was created by Bihn Pham during his internship at AMD. This patch fixes a very significant performance bug when using the O3 CPU model and Ruby. The issue was Ruby returned false when it received a request to the same address that already has an outstanding request or when the memory is blocked. As a result, O3 unnecessary squashed the pipeline and re-executed instructions. This fix merges readRequestTable and writeRequestTable in Sequencer into a single request table that keeps track of all requests and allows multiple outstanding requests to the same address. This prevents O3 from squashing the pipeline. Change-Id: If934d57b4736861e342de0ab18be4feec464273d Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/21219 Reviewed-by: Anthony Gutierrez <anthony.gutierrez@amd.com> Maintainer: Anthony Gutierrez <anthony.gutierrez@amd.com> Tested-by: kokoro <noreply+kokoro@google.com>
2019-10-22configs: Do not assume bootmem is a System childGiacomo Travaglini
As far as I can see bootmem is used in Arm systems only. With https://gem5-review.googlesource.com/c/public/gem5/+/21604 bootmem has been moved from system to system.realview. This patch fix things by removing the assumption that the bootmem SimObject lives under the system. It is now trying to getattr a reference of the bootmem. It is the ISA specific system builder's duty to bind the bootmem reference (_bootmem) to the real bootmem object Change-Id: I1e7405b5cb186de13c44bfd93fb4c8a1a5447f24 Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/22001 Reviewed-by: Bobby R. Bruce <bbruce@ucdavis.edu> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com> Tested-by: kokoro <noreply+kokoro@google.com>
2019-10-10dev-arm, configs: Remove RealViewPBX platformGiacomo Travaglini
This is an old unused platform. We should support VExpress_GEM5 based platforms only. Change-Id: If9c29047b2d068992dfbbe0dc268c70b788cce5f Signed-off-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-by: Ciro Santilli <ciro.santilli@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/21601 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Bobby R. Bruce <bbruce@ucdavis.edu> Maintainer: Andreas Sandberg <andreas.sandberg@arm.com> Tested-by: kokoro <noreply+kokoro@google.com>
2019-10-03tests: Fix a minor bug in fixture.pyAyaz Akram
debug is a part of test_log object. Signed-off-by: Ayaz Akram <yazakram@ucdavis.edu> Change-Id: I56d950483c1d86b76b4f652741d2323c1b078e3e Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/19768 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com> Tested-by: kokoro <noreply+kokoro@google.com>
2019-08-09tests: Add Arm full system regressions to the new frameworkNikos Nikoleris
Change-Id: I7e0499c8c3d63798d44f936580eecd40dc650694 Signed-off-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/18989 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2019-08-09tests: Add support for downloaded archive fixturesNikos Nikoleris
This changes add support for specifying fixtures that download archives and uncompress them to the desired directory. Change-Id: Ib3f6ee111b8d6130200507cbd170ecaf9fb39445 Signed-off-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/18988 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2019-08-09tests: Refactor the Gem5Fixture to derive from UniqueFixtureNikos Nikoleris
Gem5Fixture is used to define a fixture for building the gem5 binary. Most tests are expected to define their own Gem5Fixture, however, as some might depend on the same binary (e.g., ./build/ARM/gem5.opt), they will try to re-define a fixture for the same target. This patchset changes Gem5Fixture to derive from UniqueFixture. In addition, this patchset changes the way global fixtures are discovered to work with the new Gem5Fixture class. Instead of enumerating them when test definitions are loaded, we do so after the tests have been filtered according to specified tags (e.g., include opt variant, exclude fast, debug variants). Change-Id: Ie868a7e18ef6c3271f3c8a658229657cd43997cb Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/19251 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Maintainer: Giacomo Travaglini <giacomo.travaglini@arm.com>
2019-08-09tests: Add base class for fixtures that generate a target fileNikos Nikoleris
The new TargetFixture can be used as a base class for fixtures that generate/download a file. These fixtures are guarrantied to be unique and their setup function is only executed once. Change-Id: I6a8737b06c4e74f3e29736ec363f61251d85da8c Signed-off-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/19250 Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com> Tested-by: kokoro <noreply+kokoro@google.com>
2019-08-07sim-se, tests: add a new sim-se testBrandon Potter
This changeset adds a test to check the redirection features added in faux-filesystem changeset. The test contains a "chdir" system call to "/proc" which should be redirected to "$(gem5-dir)/m5out/fs/proc" (as specified by the config files). After "chdir", the test subsequently outputs the "/proc/cpuinfo" file which should output a configuration of a fake cpu with values set by a Python configuration file. Note, the test will call "clone" once. To avoid a runtime error, make sure that you run this test with "-n2" supplied to the "config/example/se.py" script. Change-Id: I505b046b7a4feddfa93a6ef0f0773ac43078cc94 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/17112 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2019-05-09tests: Fix import scope of testDaniel R. Carvalho
Add missing scope delimiters to Alpha tester Change-Id: Ib6796864c0dc8fc3108d9d2a7c2f770d2122889a Signed-off-by: Daniel R. Carvalho <odanrc@yahoo.com.br> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/18708 Tested-by: kokoro <noreply+kokoro@google.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2019-05-02tests: There is no architecture called "timing".Gabe Black
I'm sure that's supposed to be "x86". By switching it over, the x86 regression tests became runnable again. Change-Id: I9505703a0be71047ef3dd312ae83e76c2b32fdb5 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/18568 Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-by: Anthony Gutierrez <anthony.gutierrez@amd.com> Maintainer: Gabe Black <gabeblack@google.com> Tested-by: kokoro <noreply+kokoro@google.com>
2019-05-02tests: Add missing kernels to system creationDaniel R. Carvalho
Change 149c1fc2d070a8ce073263880ecf2ccf7535e569 removed the default value of the kernels, and fs tests rely on those. Change-Id: I6d83420af5881ab59c2d223a9915f363dd8a1c69 Signed-off-by: Daniel R. Carvalho <odanrc@yahoo.com.br> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/18528 Reviewed-by: Gabe Black <gabeblack@google.com> Maintainer: Gabe Black <gabeblack@google.com> Tested-by: kokoro <noreply+kokoro@google.com>
2019-04-12tests: Add tests for learning_gem5 configsRutuja Oza
Change-Id: Ia9cbb77115c741051c871526517bb7d8124a8051 Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/17873 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2019-04-12tests: Add protocol as an option to SconsFixtureJason Lowe-Power
Change-Id: I16e9a6169e7ad50601e460e221d6a05db1208783 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/17872 Reviewed-by: Anthony Gutierrez <anthony.gutierrez@amd.com> Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
2019-04-12tests: add riscv to cpu testsHoa Nguyen
Change-Id: Id8e767afbb74f79b980d8160eefc13e7f529f1c3 Signed-off-by: Hoa Nguyen <hoanguyen@ucdavis.edu> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/16889 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2019-04-05tests: Add Jenkins presubmit and continuous test scriptsJason Lowe-Power
Note that continuous currently isn't used. Change-Id: Ifcff88c8c4c75a9f630b97eaca22edd1681529c3 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/17456 Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com>
2019-03-21tests: Add ignore for stdin not terminalJason Lowe-Power
Change-Id: I496a9f3a0156557415d455dd2ca54c92577ca5f5 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/17455 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
2019-03-21tests: Use full path for DownloadedProgramJason Lowe-Power
Change-Id: I1dceca80a425293d64f81b06ddff499363f18bc0 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/17454 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
2019-03-21tests: Fix race condition in download fixtureJason Lowe-Power
Change-Id: Idace0e9e71a484080fc581e232ce217b449085c1 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/17453 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
2019-03-21tests,ext: Add skip_cleanup implementation for TempdirFixtureJason Lowe-Power
Change-Id: Idc5ec9309a4ef3c0ad0c7e8b2df47294acc97ec4 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/17451 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
2019-03-21ext,tests: Make return code based on test resultsJason Lowe-Power
This patch also fixes a spelling mistake. Change-Id: I8635216e512c10913a9cda54541d7e31e0d22a40 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/17450 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
2019-02-25tests: Update test scripts to work with Python 3Andreas Sandberg
Change-Id: I71b1e595765fed9e9f234c9722c33ac5348d4f11 Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/15999 Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com>
2019-02-13tests: add cpu tests to the new testing infrastructureAyaz Akram
Change-Id: I42996ddc802ef279ab4970afc37cb0df25c04b08 Signed-off-by: Ayaz Akram <yazakram@ucdavis.edu> Reviewed-on: https://gem5-review.googlesource.com/c/15857 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
2019-02-13tests: Move test programs paths to related test scriptsAyaz Akram
This change is needed to make sure that the DownloadedProgram fixture does not fail, in case the test binaries are not stored in test-progs/ (e.g. in the case of cpu tests) Change-Id: Icf96f2537b038502e78da560c7ccebc44984b509 Signed-off-by: Ayaz Akram <yazakram@ucdavis.edu> Reviewed-on: https://gem5-review.googlesource.com/c/15856 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Rutuja Govind Oza <roza@ucdavis.edu> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2019-02-13tests: Convert memtest to new frameworkJason Lowe-Power
The original memtest is located at: https://gem5.googlesource.com/public/gem5/+/master/tests/configs/memtest.py Change-Id: I58be6fb1675f6502d6644d502915df80aa197a4a Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/c/15836 Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
2019-02-13tests: Convert tgen-simple-memory to new frameworkJason Lowe-Power
The original test is located at: https://gem5.googlesource.com/public/gem5/+/master/tests/configs/tgen-simple-mem.py Change-Id: I13a58cfb3d01d08ef7c818fc00fb56ba126eb4b6 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/c/15835 Reviewed-by: Rutuja Govind Oza <roza@ucdavis.edu> Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
2019-02-12tests: Rewrite Makefiles for pthreads testAndreas Sandberg
The Makefiles for the pthreads test don't behave like typical Makefiles that support cross compilation. Rewrite the Makefile to make cross-compilation more convenient and add targets for aarch{32,64}. Change-Id: I7cae378492681744b6bb11dd5af69db81ec54229 Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/16022 Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
2019-01-31tests: Add a helper to run external scriptsAndreas Sandberg
Some tests are really just a wrapper around a test script in configs/. Add a helper method to wrap these scripts to make sure they are executed in a consistent environment. This wrapper sets up a global environment that is identical to that created by main() when it executes the script. Unlike the old wrappers, it updates the module search path to make relative imports work correctly in Python 3. Change-Id: Ie9f81ec4e2689aa8cf5ecb9fc8025d3534b5c9ca Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/15976 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2019-01-31tests: Don't override tick rate in Ruby testsAndreas Sandberg
Most Ruby tests assume that the highest frequency in the system under test is 1GHz and limits the global tick rate to this frequency. This assumption is broken since the default Ruby configuration scripts clock the CPU at 2Ghz, which results in warnings and sometimes incorrect behaviour. Change-Id: I4b204660862ce3b0ea4a13df42caacd4398fef8c Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/15975 Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
2019-01-28tests: fix arm regression due to kernel not foundCiro Santilli
At Ia49298304f658701ea0800bd79e08db404a655c3 we removed the default kernel and DTB filenames from FSConfig.py. However, the regression tests rely on that to find those blobs. This commit restores those default filenames just for the config of the regression tests. Change-Id: I9d7d869b0087ee8a3b63088693f753a703ead5d6 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/c/15957 Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
2019-01-17tests: Fix tests/main.py so it can be run from anywhere.Gabe Black
tests/main.py was trying to find paths relative to itself using the string __name__ (which was __main__) when it should have been using the string __file__ which holds the name of the file being executed. Change-Id: I5ff4c42fc7d8b75ff6b96c3cde61baf731d84738 Reviewed-on: https://gem5-review.googlesource.com/c/15675 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2019-01-11misc: updated shabang for python scriptAndrea Mondelli
The default python on MacOS doesn’t have an alias to python2. The official python version supported in gem5 is Python2.7. This patch updates the shabang according to the version required in gem5. Change-Id: I9533c0f7858b5b3cab0ef101be1ee5cd718105b0 Reviewed-on: https://gem5-review.googlesource.com/c/15375 Maintainer: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
2018-09-12cpu: Replace the fastmem with a new CPU modelAndreas Sandberg
The AtomicSimpleCPU used to be able to access memory directly to speed up simulation if no caches are used. This is fine as long as no switching between CPU models is required. In order to switch to a new CPU model that requires caches, we currently need to checkpoint the system and restore it into a new configuration. The new 'atomic_noncaching' memory mode provides a solution that avoids this issue since caches are bypassed in this mode. This changeset removes the old fastmem option from the AtomicSimpleCPU and introduces a new CPU, NonCachingSimpleCPU, which derives from the AtomicSimpleCPU. The NonCachingSimpleCPU uses the same mechanism as the AtomicSimpleCPU used to use when accessing memory in when fastmem was enabled. This changeset also introduces a new switcheroo test that tests switching between a NonCachingSimpleCPU and a TimingSimpleCPU with caches. Change-Id: If01893f9b37528b14f530c11ce6f53c097582c21 Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-on: https://gem5-review.googlesource.com/12419 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2018-08-17tests: add a stack printer testBrandon Potter
Add a test to print out stack contents for SE mode programs. The test will print out argc, argv, envp, and some auxiliary vectors. Change-Id: I489d752ee40fde24c531d8918d0c050f4df936c5 Reviewed-on: https://gem5-review.googlesource.com/3440 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2018-08-17tests: Add explicit build testJason Lowe-Power
Change-Id: Ia613ab580b880a463c9cf0dd63f61497db31fe75 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/10121
2018-08-17tests: Add test for the m5-exit instruction.Sean Wilson
Change-Id: I92a589b267ce659b6fbcf710043436b84fcb1c63 Signed-off-by: Sean Wilson <spwilson2@wisc.edu> Reviewed-on: https://gem5-review.googlesource.com/4423 Maintainer: Jason Lowe-Power <jason@lowepower.com> Reviewed-by: Anthony Gutierrez <anthony.gutierrez@amd.com>
2018-08-17tests: Add a simple example testSean Wilson
Change-Id: I0753db61d6344b9ed95c0d90a1ab097de7e2af12 Signed-off-by: Sean Wilson <spwilson2@wisc.edu> Reviewed-on: https://gem5-review.googlesource.com/4422 Maintainer: Jason Lowe-Power <jason@lowepower.com> Reviewed-by: Anthony Gutierrez <anthony.gutierrez@amd.com>
2018-08-17tests: Add Makefiles for helloJason Lowe-Power
This adds Makefiles for hello for ARM and x86 by leveraging docker and dockcross. See https://github.com/dockcross/dockcross for more information. These Makefiles also allow for automatic uploading to the correct location for users to download when running the new tests. Change-Id: I7085000393cd5283502a7af362c85befda749181 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/4883
2018-08-17tests,ext: Add a new testing library proposalSean Wilson
The new test library is split into two parts: The framework which resides in ext/, and the gem5 helping components in /tests/gem5. Change-Id: Ib4f3ae8d7eb96a7306335a3e739b7e8041aa99b9 Signed-off-by: Sean Wilson <spwilson2@wisc.edu> Reviewed-on: https://gem5-review.googlesource.com/4421 Reviewed-by: Giacomo Travaglini <giacomo.travaglini@arm.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
2018-08-17tests: Fix hello.c test programJason Lowe-Power
Update the hello test to have a sane return code. Change-Id: I9576b71ee995d8aa410c4ed19d44cc4e9fad10ee Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/4881 Reviewed-by: Nikos Nikoleris <nikos.nikoleris@arm.com> Reviewed-by: Anthony Gutierrez <anthony.gutierrez@amd.com> Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Reviewed-by: Gabe Black <gabeblack@google.com> Maintainer: Anthony Gutierrez <anthony.gutierrez@amd.com> Maintainer: Andreas Sandberg <andreas.sandberg@arm.com>
2018-06-15tests,style: add RISC-V assembly testsTuan Ta
This patch adds a subset (rv64*) of RISC-V assembly tests. The original riscv-test project can be found here: https://github.com/riscv/riscv-tests. The riscv-test project is under the BSD license (https://github.com/riscv/riscv-tests/blob/master/LICENSE) and is maintained separately from gem5 project. The tests have been slightly modified to work in gem5 SE mode: (1) Removed a trap handler used in riscv-tests for bare-metal systems (2) Instead of throwing an exception, the tests call the exit syscall with the exit code of - '0' if SUCCESS - Failed test case's number (non-zero) if FAILURE The exit code can be captured after a simuation completes. In addition to original RISC-V assembly tests, this patch adds several assembly tests specifically for AMO, LR, SC and system calls. Those tests target a multi-core system. (1) rv64uamt: multi-threaded tests for A-extension instructions (2) rv64samt: multi-threaded tests for clone and futex system calls This patch also makes the style checker ignore RISC-V assembly test directory. The assembly tests are maintained in an external project that does not follow the gem5 coding conventions. Please find more details in the README file included in this patch. Change-Id: Id1015d9a2c6c7d0341fa8b81483289e5f0bfcec0 Reviewed-on: https://gem5-review.googlesource.com/6703 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>