aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Waterman <aswaterman@gmail.com>2017-11-11 16:15:22 -0800
committerGitHub <noreply@github.com>2017-11-11 16:15:22 -0800
commit6cd865488a4ef49f0f68f46ef619f097a0ae9ec0 (patch)
tree6a2b35c60ef918172c316f0de45d98df0cb2d648
parentd9b4071ea4a9a2fe84a51443250184f51e931ac2 (diff)
downloadriscv-tests-6cd865488a4ef49f0f68f46ef619f097a0ae9ec0.zip
riscv-tests-6cd865488a4ef49f0f68f46ef619f097a0ae9ec0.tar.gz
riscv-tests-6cd865488a4ef49f0f68f46ef619f097a0ae9ec0.tar.bz2
Make sure that code is 4-byte aligned before disabling rvc (#100)
-rw-r--r--isa/rv64mi/ma_addr.S1
-rw-r--r--isa/rv64si/ma_fetch.S1
-rw-r--r--isa/rv64uc/rvc.S3
-rw-r--r--isa/rv64ui/jalr.S1
4 files changed, 5 insertions, 1 deletions
diff --git a/isa/rv64mi/ma_addr.S b/isa/rv64mi/ma_addr.S
index 2f4d96d..721ac6a 100644
--- a/isa/rv64mi/ma_addr.S
+++ b/isa/rv64mi/ma_addr.S
@@ -13,6 +13,7 @@
RVTEST_RV64M
RVTEST_CODE_BEGIN
+ .align 2
.option norvc
la s0, data
diff --git a/isa/rv64si/ma_fetch.S b/isa/rv64si/ma_fetch.S
index 5943456..cd5a22d 100644
--- a/isa/rv64si/ma_fetch.S
+++ b/isa/rv64si/ma_fetch.S
@@ -23,6 +23,7 @@ RVTEST_CODE_BEGIN
#define stvec_handler mtvec_handler
#endif
+ .align 2
.option norvc
# Without RVC, the jalr should trap, and the handler will skip ahead.
diff --git a/isa/rv64uc/rvc.S b/isa/rv64uc/rvc.S
index b0766a9..3629d1d 100644
--- a/isa/rv64uc/rvc.S
+++ b/isa/rv64uc/rvc.S
@@ -13,11 +13,12 @@
RVTEST_RV64U
RVTEST_CODE_BEGIN
+ .align 2
.option push
.option norvc
#define RVC_TEST_CASE(n, r, v, code...) \
- TEST_CASE (n, r, v, .option push; .option rvc; code; .option pop)
+ TEST_CASE (n, r, v, .option push; .option rvc; code; .align 2; .option pop)
// Make sure fetching a 4-byte instruction across a page boundary works.
li TESTNUM, 2
diff --git a/isa/rv64ui/jalr.S b/isa/rv64ui/jalr.S
index d63bbe2..f27005a 100644
--- a/isa/rv64ui/jalr.S
+++ b/isa/rv64ui/jalr.S
@@ -43,6 +43,7 @@ target_2:
#-------------------------------------------------------------
.option push
+ .align 2
.option norvc
TEST_CASE( 7, t0, 4, \
li t0, 1; \