New AUIPC semantics
authorAndrew Waterman <waterman@cs.berkeley.edu>
Sat, 21 Sep 2013 13:31:53 +0000 (06:31 -0700)
committerAndrew Waterman <waterman@cs.berkeley.edu>
Sat, 21 Sep 2013 13:31:53 +0000 (06:31 -0700)
isa/rv64ui/auipc.S

index 9b291b57172d54b05f9d47d6e6853796b872c2b3..c2b51578dff61de6cf5581f5300adeca37e90955 100644 (file)
 RVTEST_RV64U
 RVTEST_CODE_BEGIN
 
 RVTEST_RV64U
 RVTEST_CODE_BEGIN
 
-  TEST_CASE(2, a0, -4096+8, \
+  TEST_CASE(2, a0, 1<<12, \
+    .align 3; \
     auipc a0, 0x00001; \
     auipc a0, 0x00001; \
-    jal 1f; \
-    1: sub a0, ra, a0; \
+    jal a1, 1f; \
+    1: srl a1, a1, 12; \
+    sll a1, a1, 12; \
+    sub a0, a0, a1; \
   )
 
   )
 
-  TEST_CASE(3, a0, 4096+8, \
+  TEST_CASE(3, a0, -1<<12, \
+    .align 3; \
     auipc a0, 0xfffff; \
     auipc a0, 0xfffff; \
-    jal 1f; \
-    1: sub a0, ra, a0; \
+    jal a1, 1f; \
+    1: srl a1, a1, 12; \
+    sll a1, a1, 12; \
+    sub a0, a0, a1; \
   )
 
   TEST_PASSFAIL
   )
 
   TEST_PASSFAIL