diff options
author | Andrew Waterman <waterman@cs.berkeley.edu> | 2015-03-12 17:39:44 -0700 |
---|---|---|
committer | Andrew Waterman <waterman@cs.berkeley.edu> | 2015-03-12 17:39:44 -0700 |
commit | 7864b6441aad0bca337eb70fcd12394cc68bddc6 (patch) | |
tree | 04e9cc542d46b016706e1761100db94c2fc75b9c /isa/rv64ui | |
parent | d7dba3cbb448b2deeefa54653c7fcaab7e22940f (diff) | |
download | riscv-tests-7864b6441aad0bca337eb70fcd12394cc68bddc6.zip riscv-tests-7864b6441aad0bca337eb70fcd12394cc68bddc6.tar.gz riscv-tests-7864b6441aad0bca337eb70fcd12394cc68bddc6.tar.bz2 |
Update to new privileged spec
Diffstat (limited to 'isa/rv64ui')
-rw-r--r-- | isa/rv64ui/Makefrag | 22 | ||||
-rw-r--r-- | isa/rv64ui/lrsc.S | 10 |
2 files changed, 18 insertions, 14 deletions
diff --git a/isa/rv64ui/Makefrag b/isa/rv64ui/Makefrag index fd4ac41..a0f974d 100644 --- a/isa/rv64ui/Makefrag +++ b/isa/rv64ui/Makefrag @@ -30,17 +30,17 @@ rv64ui_mc_tests = \ lrsc rv64ui_sc_vec_tests = \ - add addi addiw addw \ - and andi \ - lui \ - mul mulh mulhsu mulhu mulw \ - or ori \ - sll slli slliw sllw \ - slt slti sltiu sltu \ - sra srai sraiw sraw \ - srl srli srliw srlw \ - sub subw \ - xor xori \ + #add addi addiw addw \ + #and andi \ + #lui \ + #mul mulh mulhsu mulhu mulw \ + #or ori \ + #sll slli slliw sllw \ + #slt slti sltiu sltu \ + #sra srai sraiw sraw \ + #srl srli srliw srlw \ + #sub subw \ + #xor xori \ rv64ui_p_tests = $(addprefix rv64ui-p-, $(rv64ui_sc_tests)) rv64ui_pm_tests = $(addprefix rv64ui-pm-, $(rv64ui_mc_tests)) diff --git a/isa/rv64ui/lrsc.S b/isa/rv64ui/lrsc.S index 0300eae..6c4904e 100644 --- a/isa/rv64ui/lrsc.S +++ b/isa/rv64ui/lrsc.S @@ -13,13 +13,17 @@ RVTEST_RV64U RVTEST_CODE_BEGIN -# wait for all cores to boot +# get a unique core id la a0, coreid li a1, 1 amoadd.w a2, a1, (a0) -lw a3, 4(x0) + +# for now, only run this on core 0 +1:li a3, 1 +bgeu a2, a3, 1b + 1: lw a1, (a0) -blt a1, a3, 1b +bltu a1, a3, 1b # make sure that sc without a reservation fails. TEST_CASE( 2, a4, 1, \ |