From 7917324486685f738ea165642e25bfb997a69c2d Mon Sep 17 00:00:00 2001 From: Andrew Waterman Date: Sun, 22 May 2016 18:19:48 -0700 Subject: [PATCH 1/1] Enable LR/SC tests, even for uniprocessors --- isa/rv32ui/Makefrag | 4 +--- isa/rv32ui/lrsc.S | 1 + isa/rv64ui/Makefrag | 4 +--- isa/rv64ui/lrsc.S | 1 + 4 files changed, 4 insertions(+), 6 deletions(-) diff --git a/isa/rv32ui/Makefrag b/isa/rv32ui/Makefrag index 8124c02..4bdebb5 100644 --- a/isa/rv32ui/Makefrag +++ b/isa/rv32ui/Makefrag @@ -6,6 +6,7 @@ rv32ui_sc_tests = \ simple \ add addi \ amoadd_w amoand_w amomax_w amomaxu_w amomin_w amominu_w amoor_w amoxor_w amoswap_w \ + lrsc \ and andi \ auipc \ beq bge bgeu blt bltu bne \ @@ -25,9 +26,6 @@ rv32ui_sc_tests = \ sub \ xor xori \ -rv32ui_mc_tests = \ - lrsc - rv32ui_p_tests = $(addprefix rv32ui-p-, $(rv32ui_sc_tests)) rv32ui_v_tests = $(addprefix rv32ui-v-, $(rv32ui_sc_tests)) diff --git a/isa/rv32ui/lrsc.S b/isa/rv32ui/lrsc.S index 2aee818..3a3d05a 100644 --- a/isa/rv32ui/lrsc.S +++ b/isa/rv32ui/lrsc.S @@ -32,6 +32,7 @@ TEST_CASE( 2, a4, 1, \ ) # make sure that sc with the wrong reservation fails. +# TODO is this actually mandatory behavior? TEST_CASE( 3, a4, 1, \ la a0, foo; \ add a1, a0, 1024; \ diff --git a/isa/rv64ui/Makefrag b/isa/rv64ui/Makefrag index e839118..4af2504 100644 --- a/isa/rv64ui/Makefrag +++ b/isa/rv64ui/Makefrag @@ -6,6 +6,7 @@ rv64ui_sc_tests = \ add addi addiw addw \ amoadd_d amoand_d amomax_d amomaxu_d amomin_d amominu_d amoor_d amoxor_d amoswap_d \ amoadd_w amoand_w amomax_w amomaxu_w amomin_w amominu_w amoor_w amoxor_w amoswap_w \ + lrsc \ and andi \ auipc \ beq bge bgeu blt bltu bne \ @@ -26,9 +27,6 @@ rv64ui_sc_tests = \ sub subw \ xor xori \ -rv64ui_mc_tests = \ - lrsc - rv64ui_p_tests = $(addprefix rv64ui-p-, $(rv64ui_sc_tests)) rv64ui_v_tests = $(addprefix rv64ui-v-, $(rv64ui_sc_tests)) diff --git a/isa/rv64ui/lrsc.S b/isa/rv64ui/lrsc.S index 6c4904e..9422739 100644 --- a/isa/rv64ui/lrsc.S +++ b/isa/rv64ui/lrsc.S @@ -32,6 +32,7 @@ TEST_CASE( 2, a4, 1, \ ) # make sure that sc with the wrong reservation fails. +# TODO is this actually mandatory behavior? TEST_CASE( 3, a4, 1, \ la a0, foo; \ add a1, a0, 1024; \ -- 2.30.2