riscv-tests.git
8 years agoERET -> xRET; new memory map
Andrew Waterman [Sun, 1 May 2016 03:45:27 +0000 (20:45 -0700)]
ERET -> xRET; new memory map

For now, we no longer build hex files, because the programs don't
start at address 0.  This decision will likely be revisited.

8 years agoDon't use stats register; refer to uarch counters by number
Andrew Waterman [Wed, 6 Apr 2016 17:29:08 +0000 (10:29 -0700)]
Don't use stats register; refer to uarch counters by number

8 years agoFix expected misa register value for RV32
Andrew Waterman [Wed, 6 Apr 2016 17:22:20 +0000 (10:22 -0700)]
Fix expected misa register value for RV32

8 years agoRework benchmarks to run in M-mode
Andrew Waterman [Tue, 15 Mar 2016 00:47:25 +0000 (17:47 -0700)]
Rework benchmarks to run in M-mode

This broadens their utility and lets them use the M-mode counters directly.

8 years agoUpdate .gitignore
Andrew Waterman [Tue, 15 Mar 2016 00:03:09 +0000 (17:03 -0700)]
Update .gitignore

8 years agoMerge branch 'priv-1.9'
Andrew Waterman [Tue, 15 Mar 2016 00:01:44 +0000 (17:01 -0700)]
Merge branch 'priv-1.9'

8 years agoMore RV32 tests
Andrew Waterman [Mon, 14 Mar 2016 23:57:50 +0000 (16:57 -0700)]
More RV32 tests

8 years agoAdd missing rv32mi/rv32si tests
Andrew Waterman [Thu, 10 Mar 2016 22:47:44 +0000 (14:47 -0800)]
Add missing rv32mi/rv32si tests

8 years agorevert install rule to the old correct way
Howard Mao [Mon, 7 Mar 2016 23:14:48 +0000 (15:14 -0800)]
revert install rule to the old correct way

8 years agoUndo accidental Makefile modification
Andrew Waterman [Thu, 3 Mar 2016 18:49:57 +0000 (10:49 -0800)]
Undo accidental Makefile modification

8 years agoMake WFI test more strict
Andrew Waterman [Thu, 3 Mar 2016 07:19:58 +0000 (23:19 -0800)]
Make WFI test more strict

8 years agoSome S-mode tests really only belong in M-mode
Andrew Waterman [Thu, 3 Mar 2016 06:33:37 +0000 (22:33 -0800)]
Some S-mode tests really only belong in M-mode

8 years agoMake JALR test sensible in RISC-V, rather than SMIPS
Andrew Waterman [Thu, 3 Mar 2016 06:34:19 +0000 (22:34 -0800)]
Make JALR test sensible in RISC-V, rather than SMIPS

8 years agoFix ma_fetch to work with or without RVC
Andrew Waterman [Thu, 3 Mar 2016 05:42:17 +0000 (21:42 -0800)]
Fix ma_fetch to work with or without RVC

8 years agoWIP on priv spec v1.9
Andrew Waterman [Mon, 29 Feb 2016 07:47:09 +0000 (23:47 -0800)]
WIP on priv spec v1.9

8 years agoWIP on priv spec v1.9
Andrew Waterman [Mon, 29 Feb 2016 07:24:46 +0000 (23:24 -0800)]
WIP on priv spec v1.9

8 years agoFix ./configure in root
Andrew Waterman [Thu, 3 Mar 2016 19:02:24 +0000 (11:02 -0800)]
Fix ./configure in root

This Makefile is still super ghetto!

8 years agoNegative float -> unsigned int conversions return 0
Andrew Waterman [Wed, 2 Mar 2016 00:32:25 +0000 (16:32 -0800)]
Negative float -> unsigned int conversions return 0

8 years agoMerge pull request #8 from riscv/sqrt-171
Colin Schmidt [Tue, 1 Mar 2016 00:55:12 +0000 (16:55 -0800)]
Merge pull request #8 from riscv/sqrt-171

What is the square root of 171?

8 years agoremove comments now that tests pass
Colin Schmidt [Tue, 1 Mar 2016 00:54:36 +0000 (16:54 -0800)]
remove comments now that tests pass

8 years agoFix capitalization of XLEN variable
Andrew Waterman [Mon, 29 Feb 2016 07:28:32 +0000 (23:28 -0800)]
Fix capitalization of XLEN variable

8 years agoStrip big-endian tests
Andrew Waterman [Mon, 29 Feb 2016 07:18:19 +0000 (23:18 -0800)]
Strip big-endian tests

These tests will likely never support non-standard big-endian systems.

8 years agoMerge pull request #10 from riscv/travis-dev
Palmer Dabbelt [Sat, 27 Feb 2016 20:42:46 +0000 (12:42 -0800)]
Merge pull request #10 from riscv/travis-dev

Support multi configuration travis builds

8 years agoonly build the rv32 bit tests if xlen is 32
Colin Schmidt [Sat, 27 Feb 2016 06:01:37 +0000 (22:01 -0800)]
only build the rv32 bit tests if xlen is 32

8 years agoremove malloc declaration from dhrystone
Colin Schmidt [Sat, 27 Feb 2016 06:00:31 +0000 (22:00 -0800)]
remove malloc declaration from dhrystone

it was unused and causing issues when building
with the linux toolchain

8 years agoallow make variables to be overwritten update configure
Colin Schmidt [Fri, 26 Feb 2016 23:44:54 +0000 (15:44 -0800)]
allow make variables to be overwritten update configure

configure now respects the host flag, rather than hardcoding the risc-v
compiler

8 years agoadd new failing fsqrt test case
Colin Schmidt [Thu, 25 Feb 2016 01:18:42 +0000 (17:18 -0800)]
add new failing fsqrt test case

when using testfloat the correct format is
input output unknown value
This comment requested by palmer

8 years agomake install rule copy the right things to the right places
Howard Mao [Wed, 24 Feb 2016 07:11:27 +0000 (23:11 -0800)]
make install rule copy the right things to the right places

8 years agofix install rule
Howard Mao [Wed, 24 Feb 2016 06:18:00 +0000 (22:18 -0800)]
fix install rule

8 years agoWhat is the square root of 171?
Palmer Dabbelt [Thu, 18 Feb 2016 08:29:02 +0000 (00:29 -0800)]
What is the square root of 171?

I get differnt answers on Rocket and Spike.  The Spike answer matches my Intel
machine.  This fails when I compute both the single precision and double
precision answer.

8 years agoMerge pull request #7 from riscv/nan2
Andrew Waterman [Sat, 30 Jan 2016 02:22:10 +0000 (18:22 -0800)]
Merge pull request #7 from riscv/nan2

Two extra NaN test cases

8 years agoTest that fcvt canonicalizes NaNs
Palmer Dabbelt [Sat, 30 Jan 2016 00:54:18 +0000 (16:54 -0800)]
Test that fcvt canonicalizes NaNs

I believe this is entirely within the RISC-V ISA spec:

 * fmv is defined to move IEEE floats
 * All otherwise-unspeficied floating-point operations canonicalize NaNs

This test fails on Spike, but passes on Rocket.  I believe this is the source
of my current torture failures.

8 years agoCheck NAN values in fdiv tests
Palmer Dabbelt [Fri, 29 Jan 2016 19:33:40 +0000 (11:33 -0800)]
Check NAN values in fdiv tests

The new RISC-V ISA spec mandates NAN bit patterns.  This test checks to make
sure that those bit patterns come out of fsqrt(-1).  These pass on both spike
and Rocket.

An additional _DWORD_RESULT version of the FP test macros is added to
facilitate floating-point tests that compare against particular bit patterns.

8 years agoUse new NaN handling for conversions to integer
Andrew Waterman [Wed, 13 Jan 2016 00:16:58 +0000 (16:16 -0800)]
Use new NaN handling for conversions to integer

8 years agoUse new canonical NaN
Andrew Waterman [Wed, 13 Jan 2016 00:16:49 +0000 (16:16 -0800)]
Use new canonical NaN

8 years agoWrite 1, not 0, to MIPI
Andrew Waterman [Wed, 13 Jan 2016 00:16:14 +0000 (16:16 -0800)]
Write 1, not 0, to MIPI

8 years agochange la to li as appropriate in test macros
Howard Mao [Mon, 14 Dec 2015 17:54:13 +0000 (09:54 -0800)]
change la to li as appropriate in test macros

8 years agoMerge pull request #4 from pmundkur/devel
Andrew Waterman [Fri, 4 Dec 2015 22:45:28 +0000 (14:45 -0800)]
Merge pull request #4 from pmundkur/devel

Add a top-level make clean target.

9 years agoUpdate IPI test to work with new mechanism
Andrew Waterman [Mon, 16 Nov 2015 22:16:05 +0000 (14:16 -0800)]
Update IPI test to work with new mechanism

9 years agoupdate env
Andrew Waterman [Fri, 6 Nov 2015 08:23:47 +0000 (00:23 -0800)]
update env

9 years agoAvoid REMU in timer test
Andrew Waterman [Mon, 19 Oct 2015 19:25:23 +0000 (12:25 -0700)]
Avoid REMU in timer test

9 years agofix to riscv_test.h in env
Howard Mao [Mon, 28 Sep 2015 20:49:41 +0000 (13:49 -0700)]
fix to riscv_test.h in env

9 years agoAdd another recoding test
Andrew Waterman [Thu, 24 Sep 2015 18:49:11 +0000 (11:49 -0700)]
Add another recoding test

9 years agoAdd another recoding test case
Andrew Waterman [Mon, 21 Sep 2015 19:21:11 +0000 (12:21 -0700)]
Add another recoding test case

9 years agoRemove executable permissions from source files
Andrew Waterman [Mon, 21 Sep 2015 06:38:38 +0000 (23:38 -0700)]
Remove executable permissions from source files

9 years agoRemove Hwacha v3 tests
Andrew Waterman [Mon, 21 Sep 2015 06:38:00 +0000 (23:38 -0700)]
Remove Hwacha v3 tests

9 years agoAdd another FP recoding test case
Andrew Waterman [Sun, 20 Sep 2015 21:57:19 +0000 (14:57 -0700)]
Add another FP recoding test case

9 years agoAdd test for FP recoding corner cases
Andrew Waterman [Wed, 16 Sep 2015 20:45:07 +0000 (13:45 -0700)]
Add test for FP recoding corner cases

9 years agoAdd a top-level make clean target.
Prashanth Mundkur [Thu, 6 Aug 2015 20:27:10 +0000 (13:27 -0700)]
Add a top-level make clean target.

9 years agoUse medany code model, not PIC, for ISA tests
Andrew Waterman [Tue, 4 Aug 2015 01:20:54 +0000 (18:20 -0700)]
Use medany code model, not PIC, for ISA tests

9 years agodon't pass fpu/vector tests when fpu/vector not present
Yunsup Lee [Fri, 17 Jul 2015 19:31:14 +0000 (12:31 -0700)]
don't pass fpu/vector tests when fpu/vector not present

9 years agoCoherence torture test for VM tests
Andrew Waterman [Tue, 7 Jul 2015 00:07:02 +0000 (17:07 -0700)]
Coherence torture test for VM tests

VM tests only support one core, so have the other cores hammer on the
memory system to attempt to catch simple coherence regressions.

9 years agoNew M-mode timers
Andrew Waterman [Sun, 5 Jul 2015 23:57:07 +0000 (16:57 -0700)]
New M-mode timers

9 years agoFix RV32 handling of syscall arguments
Andrew Waterman [Fri, 3 Jul 2015 00:14:06 +0000 (17:14 -0700)]
Fix RV32 handling of syscall arguments

9 years agoAdd _hard_float check in crt.S.
Christopher Celio [Wed, 1 Jul 2015 22:59:11 +0000 (15:59 -0700)]
Add _hard_float check in crt.S.

9 years agoAdd basic WFI test
Andrew Waterman [Tue, 19 May 2015 09:28:59 +0000 (02:28 -0700)]
Add basic WFI test

9 years agoFix VM, MIP encoding
Andrew Waterman [Thu, 14 May 2015 09:18:59 +0000 (02:18 -0700)]
Fix VM, MIP encoding

9 years agoUpdate to privileged architecture version 1.7
Andrew Waterman [Sat, 9 May 2015 23:39:39 +0000 (16:39 -0700)]
Update to privileged architecture version 1.7

9 years agoFix dhrystone timing code
Andrew Waterman [Fri, 1 May 2015 22:16:55 +0000 (15:16 -0700)]
Fix dhrystone timing code

9 years agoMake dhrystone report correct-ish numbers
Andrew Waterman [Fri, 1 May 2015 07:56:39 +0000 (00:56 -0700)]
Make dhrystone report correct-ish numbers

9 years agoDon't rely on reset values of MSTATUS_UA/SA
Andrew Waterman [Tue, 21 Apr 2015 21:58:47 +0000 (14:58 -0700)]
Don't rely on reset values of MSTATUS_UA/SA

9 years agoFix benchmark compilation/execution on RV32
Andrew Waterman [Tue, 21 Apr 2015 21:57:42 +0000 (14:57 -0700)]
Fix benchmark compilation/execution on RV32

9 years agoMerge pull request #3 from joerchan/master
Andrew Waterman [Mon, 13 Apr 2015 21:43:18 +0000 (14:43 -0700)]
Merge pull request #3 from joerchan/master

Better coverage of mul high instructions

9 years agoCorrect expected high value of multiplication
Joakim Andersson [Mon, 13 Apr 2015 20:57:04 +0000 (22:57 +0200)]
Correct expected high value of multiplication

9 years agoBetter coverage of mul high instructions
Joakim Andersson [Sun, 12 Apr 2015 21:50:05 +0000 (23:50 +0200)]
Better coverage of mul high instructions

9 years agoRun RV32 tests on spike with --isa=RV32
Andrew Waterman [Sat, 4 Apr 2015 05:16:00 +0000 (22:16 -0700)]
Run RV32 tests on spike with --isa=RV32

9 years agoUpdate env
Andrew Waterman [Tue, 31 Mar 2015 05:00:00 +0000 (22:00 -0700)]
Update env

9 years agoNew virtual memory implementation (Sv39)
Andrew Waterman [Fri, 27 Mar 2015 23:17:36 +0000 (16:17 -0700)]
New virtual memory implementation (Sv39)

9 years agosplit out S-mode tests and M-mode tests
Yunsup Lee [Wed, 25 Mar 2015 23:25:42 +0000 (16:25 -0700)]
split out S-mode tests and M-mode tests

9 years agoDon't assume PRV1/2 and IE1/2 are reset
Andrew Waterman [Wed, 25 Mar 2015 02:30:14 +0000 (19:30 -0700)]
Don't assume PRV1/2 and IE1/2 are reset

9 years agoMerge rv64si and rv32si tests
Andrew Waterman [Sat, 21 Mar 2015 06:14:10 +0000 (23:14 -0700)]
Merge rv64si and rv32si tests

9 years agoAdd fdiv test
Andrew Waterman [Sat, 21 Mar 2015 05:16:44 +0000 (22:16 -0700)]
Add fdiv test

9 years agoneed fence before scall for vector mm
Yunsup Lee [Tue, 17 Mar 2015 21:38:04 +0000 (14:38 -0700)]
need fence before scall for vector mm

9 years agopush env
Yunsup Lee [Tue, 17 Mar 2015 12:00:42 +0000 (05:00 -0700)]
push env

9 years agorelay hwacha cause/aux to scause/sbadaddr
Yunsup Lee [Tue, 17 Mar 2015 11:35:24 +0000 (04:35 -0700)]
relay hwacha cause/aux to scause/sbadaddr

9 years agoMerge [shm]call into ecall, [shm]ret into eret
Andrew Waterman [Tue, 17 Mar 2015 08:18:36 +0000 (01:18 -0700)]
Merge [shm]call into ecall, [shm]ret into eret

9 years agorevamp vector tests with new privileged spec, and add scalar pt tests
Yunsup Lee [Mon, 16 Mar 2015 09:10:17 +0000 (02:10 -0700)]
revamp vector tests with new privileged spec, and add scalar pt tests

9 years agoAdd PTE dirty bit test
Andrew Waterman [Sat, 14 Mar 2015 09:08:03 +0000 (02:08 -0700)]
Add PTE dirty bit test

9 years agoUse hcall instead of mcall
Andrew Waterman [Fri, 13 Mar 2015 06:09:22 +0000 (23:09 -0700)]
Use hcall instead of mcall

9 years agoUpdate to new privileged spec
Andrew Waterman [Fri, 13 Mar 2015 00:39:44 +0000 (17:39 -0700)]
Update to new privileged spec

9 years agoAdded more +/- NaN/inf tests for fcvt.{w/l/wu/lu}.{s/d}
Christopher Celio [Tue, 24 Feb 2015 00:07:56 +0000 (16:07 -0800)]
Added more +/- NaN/inf tests for fcvt.{w/l/wu/lu}.{s/d}

9 years agoAdded -NaN test for fcvt.{w/h}.s
Christopher Celio [Mon, 23 Feb 2015 03:36:40 +0000 (19:36 -0800)]
Added -NaN test for fcvt.{w/h}.s

9 years agoUnify rv32/rv64 timer tests
Andrew Waterman [Thu, 19 Feb 2015 20:25:14 +0000 (12:25 -0800)]
Unify rv32/rv64 timer tests

9 years agochange organization to riscv
Yunsup Lee [Tue, 17 Feb 2015 19:31:28 +0000 (11:31 -0800)]
change organization to riscv

9 years agoMake rv64uf-p-ldst test the sign bit, too
Andrew Waterman [Mon, 16 Feb 2015 00:13:18 +0000 (16:13 -0800)]
Make rv64uf-p-ldst test the sign bit, too

9 years agoChange submodule pointers to github.com/riscv
Palmer Dabbelt [Sat, 7 Feb 2015 19:53:29 +0000 (11:53 -0800)]
Change submodule pointers to github.com/riscv

This new organization is designed to make it easier for external
collaborators to contribute.

9 years agoFix matmul performance on gcc 4.9
Andrew Waterman [Tue, 27 Jan 2015 08:33:47 +0000 (00:33 -0800)]
Fix matmul performance on gcc 4.9

It's just loop interchange in the register blocking loop.

9 years agoAdd LICENSE
Andrew Waterman [Sat, 10 Jan 2015 01:57:12 +0000 (17:57 -0800)]
Add LICENSE

9 years agoAvoid deprecated "b" pseudo-op; use "j" instead
Andrew Waterman [Mon, 5 Jan 2015 05:31:18 +0000 (21:31 -0800)]
Avoid deprecated "b" pseudo-op; use "j" instead

9 years agoOn misaligned fetch, EPC = branch target, not source
Andrew Waterman [Sat, 3 Jan 2015 06:33:32 +0000 (22:33 -0800)]
On misaligned fetch, EPC = branch target, not source

We can revert this commit if we decide to change the EPC behavior.

9 years agominor mt updates
Henry Cook [Thu, 18 Dec 2014 03:12:08 +0000 (19:12 -0800)]
minor mt updates

9 years agoRemove dependence on machine/syscall.h
Andrew Waterman [Tue, 16 Dec 2014 02:10:13 +0000 (18:10 -0800)]
Remove dependence on machine/syscall.h

9 years agoInitialize static TLS for the benchmarks
Andrew Waterman [Sat, 13 Dec 2014 11:53:49 +0000 (03:53 -0800)]
Initialize static TLS for the benchmarks

9 years agoAdd more entropy to matrix multiplication input
Andrew Waterman [Sat, 13 Dec 2014 02:17:31 +0000 (18:17 -0800)]
Add more entropy to matrix multiplication input

This will exercise the floating-point units more thoroughly.

9 years agoUse user stack in supervisor mode
Andrew Waterman [Sat, 13 Dec 2014 00:07:46 +0000 (16:07 -0800)]
Use user stack in supervisor mode

This fixes a race condition, as there was only one kernel stack.

9 years agoUse new toolchain and calling convention
Andrew Waterman [Thu, 4 Dec 2014 01:50:37 +0000 (17:50 -0800)]
Use new toolchain and calling convention

9 years agoRely on assembler to relax far branches
Andrew Waterman [Thu, 4 Dec 2014 01:48:17 +0000 (17:48 -0800)]
Rely on assembler to relax far branches

9 years agoMake timer test more thorough
Andrew Waterman [Thu, 4 Dec 2014 01:47:55 +0000 (17:47 -0800)]
Make timer test more thorough

10 years agopush env
Yunsup Lee [Sat, 22 Nov 2014 18:29:44 +0000 (10:29 -0800)]
push env

10 years agorelax rv32si timer test a bit
Yunsup Lee [Sat, 22 Nov 2014 18:29:30 +0000 (10:29 -0800)]
relax rv32si timer test a bit