diff options
author | Alexey Yerin <yyp@disroot.org> | 2022-06-12 22:29:32 +0300 |
---|---|---|
committer | Quentin Carbonneaux <quentin@c9x.me> | 2022-06-14 09:12:19 +0200 |
commit | 1162359a198ab6a18a734cb9f7955d0b28e342b6 (patch) | |
tree | a4ec5b9c106bb9c2b14b87150b16dae2664e5565 /rv64/targ.c | |
parent | c9f04db881e8ec0bb0beeba6274a5755c46cb534 (diff) | |
download | roux-1162359a198ab6a18a734cb9f7955d0b28e342b6.tar.gz |
rv64: implement Oswap for floating-point types
Diffstat (limited to 'rv64/targ.c')
-rw-r--r-- | rv64/targ.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/rv64/targ.c b/rv64/targ.c index d42d0a1..9360cf7 100644 --- a/rv64/targ.c +++ b/rv64/targ.c @@ -11,7 +11,7 @@ int rv64_rsave[] = { A0, A1, A2, A3, A4, A5, A6, A7, FA0, FA1, FA2, FA3, FA4, FA5, FA6, FA7, FT0, FT1, FT2, FT3, FT4, FT5, FT6, FT7, - FT8, FT9, FT10, FT11, + FT8, FT9, FT10, -1 }; int rv64_rclob[] = { @@ -22,8 +22,7 @@ int rv64_rclob[] = { -1 }; -/* T6 used as swap register (TODO: is there a better choice?) */ -#define RGLOB (BIT(FP) | BIT(SP) | BIT(GP) | BIT(TP) | BIT(RA) | BIT(T6)) +#define RGLOB (BIT(FP) | BIT(SP) | BIT(GP) | BIT(TP) | BIT(RA)) static int rv64_memargs(int op) @@ -39,7 +38,7 @@ Target T_rv64 = { .fpr0 = FT0, .nfpr = NFPR, .rglob = RGLOB, - .nrglob = 6, + .nrglob = 5, .rsave = rv64_rsave, .nrsave = {NGPS, NFPS}, .retregs = rv64_retregs, |