From e2b7385b03a6dc9c8c39dde5c049cd74b0768bd1 Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Sun, 12 Nov 2023 16:15:40 +0200 Subject: Remove options, improve functions --- asm/ext_std.py | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'asm/ext_std.py') diff --git a/asm/ext_std.py b/asm/ext_std.py index f4751a3..247e605 100644 --- a/asm/ext_std.py +++ b/asm/ext_std.py @@ -78,24 +78,24 @@ def expand_sinc(imm: str) -> ExpandResult: def expand_sdec(imm: str) -> ExpandResult: return expand_subi("SP", imm, "SP") -def expand_csr(addr_reg: str): +def expand_csr(addr_reg: str, stratch_reg: str): return [ - ["lpc", "CSR_SCRATCH"], - *expand_addi("CSR_SCRATCH", "4", "CSR_SCRATCH"), - *expand_spu("CSR_SCRATCH"), + ["lpc", stratch_reg], + *expand_addi(stratch_reg, "4", stratch_reg), + *expand_spu(stratch_reg), ["jpr", addr_reg] ] -def expand_csi(addr_imm: str): +def expand_csi(addr_imm: str, stratch_reg: str): return [ - ["lpc", "CSR_SCRATCH"], - *expand_addi("CSR_SCRATCH", "4", "CSR_SCRATCH"), - *expand_spu("CSR_SCRATCH"), + ["lpc", stratch_reg], + *expand_addi(stratch_reg, "4", stratch_reg), + *expand_spu(stratch_reg), ["jpi", addr_imm] ] -def expand_rsr(): - return expand_spo("CSR_SCRATCH") + [["jpr", "CSR_SCRATCH"]] +def expand_rsr(stratch_reg: str): + return expand_spo(stratch_reg) + [["jpr", stratch_reg]] def stack_stash(*rs: str): -- cgit v1.3