marigold-dev / marigold-dev/deku

32bits support

Open
#9 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

backlog
Dominant language
OCaml
Stars
82
Forks
17
PR merge metrics
No merged PRs in 30d

Description

Why

Having 32bits support especially for ARM32 means that we can do tools using the sidechain codebase, this include wallets for Android ARMv7 but also any other kind of embedded hardware that wants to communicate with the sidechains.

It also highlights our decisions if things break when going to 32 bits that means there is pieces of code that we did overview.

Why not supported already?

As the node is supposed to have a lot of memory to keep the state, currently we didn't care if 32bits was working or not.

Tricks

OCaml has a support for immediate only on 64bits, which is useful, like Int63 in Base.
Another trick is to make an Int32 which is unboxed in 64bits and an Int31 that is unboxed in both.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files, tests, or entry points are named. Start by building the sidechain codebase for ARM32 and auditing the 64-bit assumptions described in the issue; done means the relevant tools support ARM32, including ARMv7 targets, without breaking those assumptions.

Written by the indexing model from the issue text.

Assessment

Tech stack
ocaml
Domain
blockchain, build-system, embedded-iot
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.