diff options
| author | s-ol <s+removethis@s-ol.nu> | 2021-05-25 13:51:11 +0000 |
|---|---|---|
| committer | s-ol <s+removethis@s-ol.nu> | 2021-05-25 13:51:11 +0000 |
| commit | 14222e04958f8b0a3c1383bc1cd8afe3464f295e (patch) | |
| tree | 420e057bf3bfd11d38a962355688701dcef8bc7d /ex.subv | |
| parent | update all stages to work (diff) | |
| download | subv-14222e04958f8b0a3c1383bc1cd8afe3464f295e.tar.gz subv-14222e04958f8b0a3c1383bc1cd8afe3464f295e.zip | |
close to working AUIPC+JALR jump
Diffstat (limited to 'ex.subv')
| -rw-r--r-- | ex.subv | 11 |
1 files changed, 9 insertions, 2 deletions
@@ -12,5 +12,12 @@ main: # store 0x0a (\n) in UART0+0 13/opi 0/subop/add 6/rd/t1 0/rs/x0 0a/imm12 23/store 2/subop/word 5/rs/t0 6/rs/t1 0/off12 - # jump back up to the top - 6f/jal 0/rd/x0 main/off21 + # jump back up to the top (three versions): + # a) jal 21bit relative (with 0th bit forced to 0) + # 6f/jal 0/rd/x0 main/off21 + # b) auipc+jalr 32bit relative (note label offset) + 17/auipc 7/rd/t2 main/off32 + 67/jalr 0/subop 0/rd/x0 7/rs/t2 main+4/off32 + # c) lui+jalr 32bit absolute + # 37/lui 7/rd/t2 main/imm32 + # 67/jalr 0/subop 0/rd/x0 7/rs/t2 main/imm32 |
