Shuffling for 32 bit platforms#7725
Conversation
|
|
|
We currently do not support 32-bit platforms, and have a compile-time check that prevents compilation on 32-bit arch: https://github.com/sigp/lighthouse/blob/stable/common/target_check/src/lib.rs Is this required for RISC0? I thought RISCV would be primarily 64-bit? It's possible we could roll out 32-bit support one crate at a time, but I would like to do this in a way that is testable, rather than just updating the code which is prone to regressions. |
|
We only need 32 bit support for the some of the types in the types crate. We technically don't need it for the shuffling stuff, but then we would just be copy pasta-ing that whole file which seems a little silly. EDIT: There's something in milhouse that breaks on 32 bit platforms as well. I will be opening a PR there soon. |
|
Ok, I think we should add a CI job that runs the tests for the relevant crates on a 32-bit machine. I'm worried things will just regress otherwise. Let me discuss with the rest of the team |
|
Thanks boss 🫡 I always appreciate you and the team <3 |
|
Related-ish PR: sigp/milhouse#72 |
|
@michaelsproul can i get a CI run pl0x <3 |
|
I gotchu |
|
Some required checks have failed. Could you please take a look @ec2? 🙏 |
|
Beta compiler fail looks unrelated. We'll fix that in another PR |
michaelsproul
left a comment
There was a problem hiding this comment.
Just needs a back-merge of unstable for CI to pass.
|
@michaelsproul done! thanks 🙏🏼 |
Issue Addressed
Proposed Changes
prefix_bitsis u8 and NODE_ID_BITS = 256, we use them as u32's instead.See: https://docs.rs/ruint/latest/src/ruint/bits.rs.html#711
Additional Info
Please provide any additional information. For example, future considerations
or information useful for reviewers.