diff options
author | Andrew Waterman <waterman@cs.berkeley.edu> | 2015-09-03 20:53:51 -0700 |
---|---|---|
committer | Andrew Waterman <waterman@cs.berkeley.edu> | 2015-09-03 20:53:51 -0700 |
commit | 04d07c02bb9bfb850062b70200888c66dc5c1067 (patch) | |
tree | 42f6951beae710f7595c8ac229a79da5fee825d0 /pk | |
parent | 25acd5c8fd8167e70b9e272a802df3940435edc6 (diff) | |
download | pk-04d07c02bb9bfb850062b70200888c66dc5c1067.zip pk-04d07c02bb9bfb850062b70200888c66dc5c1067.tar.gz pk-04d07c02bb9bfb850062b70200888c66dc5c1067.tar.bz2 |
Fix RVC build
Diffstat (limited to 'pk')
-rw-r--r-- | pk/mentry.S | 1 | ||||
-rw-r--r-- | pk/mtrap.h | 3 |
2 files changed, 2 insertions, 2 deletions
diff --git a/pk/mentry.S b/pk/mentry.S index 0c1ee6a..560923e 100644 --- a/pk/mentry.S +++ b/pk/mentry.S @@ -48,6 +48,7 @@ trap_table: | (0 << (31- 8)) /* user environment call */ \ | (1 << (31- 9)) /* super environment call */ \ + .option norvc .section .text.init,"ax",@progbits .globl mentry mentry: @@ -175,10 +175,9 @@ static insn_fetch_t __attribute__((always_inline)) insn_fetch_t fetch; insn_t insn; -#ifdef __rvc +#ifdef __riscv_compressed int rvc_mask = 3, insn_hi; fetch.error = unpriv_mem_access(mstatus, mepc, - "mv %[insn], %[rvc_mask];" "lhu %[insn], 0(%[mepc]);" "and %[insn_hi], %[insn], %[rvc_mask];" "bne %[insn_hi], %[rvc_mask], 1f;" |