id = 2672 title = "Skipping a jal instruction in riscv64 baremetal emulation" state = "closed" created_at = "2024-11-13T10:22:34.551Z" closed_at = "2024-11-16T22:05:19.664Z" labels = ["Closed::Invalid", "target: riscv"] url = "https://gitlab.com/qemu-project/qemu/-/issues/2672" host-os = "openSUSE Leap 15.5" host-arch = "x86_64, Intel(R) Core(TM) i5-10400T CPU @ 2.00GHz" qemu-version = "QEMU emulator version 9.0.50" guest-os = "baremetal" guest-arch = "riscv64" description = """The binary contains an illegal instruction after a jal. Normally the jal should be taken but the illegal instructi[aia_tests2.elf](/uploads/b8b646b01d7bcc15b51c36ddbffacac7/aia_tests2.elf)on next to the jal is executed generating and illegal instruction exception: ``` 0x80006070: 00200513 addi a0,zero,2 0x80006074: 89cff0ef jal ra,-3940 # 0x80005110 ---------------- IN: _Z15int_switch_modehh 0x80006078: 0000 illegal ---------------- IN: mtvec_table 0x8000e600: 64d0406f j 20044 # 0x8001344c ```""" reproduce = """1. Execute the same binary with QEMU.""" additional = """"""