alexcrichton transferred Issue #762:
Hi,
In doing my MIPS64 port I found a couple of blockers that impede support for other RISC architectures as well.
iconst
can't load immediates larger than the instruction's slot; andbrz
brnz
and possibly other instructions can only operate on native-sized operands.How do we best implement constant materialization for RISC architectures, an arch-specific approach or a generic one with knowledge of things like
li/lui/shl/or
?As for the latter, I tried
widen
but it didn't work. I think that's becausebrz
and similar instructions is not "polymorphic" like with those namedfoo.iB
. How do I specify the correct widening behavior in this case?
Last updated: Dec 23 2024 at 14:03 UTC