Add an enable_e setting for the RV32E instruction set.

This limited RISC-V version only has registers %x0 - %x15.

Make sure the ABI lowering code doesn't use the banned registers for
arguments.
This commit is contained in:
Jakob Stoklund Olesen
2017-04-26 13:13:15 -07:00
parent 9db131c3bf
commit a4acc26d5a
5 changed files with 32 additions and 9 deletions

View File

@@ -18,6 +18,9 @@ enable_m = BoolSetting(
"Enable the use of 'M' instructions if available",
default=True)
enable_e = BoolSetting(
"Enable the 'RV32E' instruction set with only 16 registers")
use_m = And(supports_m, enable_m)
use_a = And(supports_a, shared.enable_atomics)
use_f = And(supports_f, shared.enable_float)