-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Open
Labels
cranelift:area:riscv64Issues related to the RISC-V 64 backend.Issues related to the RISC-V 64 backend.
Description
👋 Hey,
This is a followup from a comment from @jameysharp in 6915. Inst::generate_imm tries to match a 64 bit constant into a pair of Imm20 and Imm12's so that we can generate that immediate from a pair of instructions.
The current logic is quite complex and somewhat unreadable, but it doesn't need to be. @jameysharp's version is a lot cleaner, and i suspect is just missing a small fix for a few edge cases. We should clean it up.
This function should be able to generate all 32 bit constants, as well as a good number of 64 bit constants.
jameysharp
Metadata
Metadata
Assignees
Labels
cranelift:area:riscv64Issues related to the RISC-V 64 backend.Issues related to the RISC-V 64 backend.