Package 0xa9ac…bf1e
redstuff
- Move path
- 0xfdc8…ea77::redstuff
- Functions
- 70 public, 0 entry
- Structs
- 0
- Friend modules
- encoding
redstuff
- active_set12
- apportionment_queue6
- auth5
- blob27
- bls_aggregate16
- committee9
- display4
- encoding1
- epoch_parameters4
- event_blob15
- events22
- extended_field5
- init4
- messages29
- metadata4
- node_metadata10
- pending_values11
- pool_exchange_rate4
- redstuff7
- shared_blob6
- slashing6
- snapshot_blob16
- sort0
- staked_wal12
- staking43
- staking_inner52
- staking_pool42
- storage_accounting14
- storage_node21
- storage_pool43
- storage_resource12
- system44
- system_state_inner42
- upgrade9
- walrus_context4
Bytecode129 lines
The on-chain disassembly. Offsets are instruction numbers within each function.
// Move bytecode v7
module fdc88f7d7cf30afab2f82e8380d11ee8f70efb90e863d1de8616fae1bb09ea77.redstuff {
public(friend) encoded_blob_length(Arg0: u64, Arg1: u16): u64 {
L2: loc0: u64
B0:
0CopyLoc[1](Arg1: u16)
1Call source_symbols_primary(u16): u16
2CastU64
3CopyLoc[1](Arg1: u16)
4Call source_symbols_secondary(u16): u16
5CastU64
6Add
7MoveLoc[0](Arg0: u64)
8CopyLoc[1](Arg1: u16)
9Call symbol_size(u64, u16): u16
10CastU64
11Mul
12StLoc[2](loc0: u64)
13CopyLoc[1](Arg1: u16)
14CastU64
15MoveLoc[2](loc0: u64)
16MoveLoc[1](Arg1: u16)
17Call metadata_size(u16): u64
18Add
19Mul
20Ret
}
source_symbols_primary(Arg0: u16): u16 {
B0:
0CopyLoc[0](Arg0: u16)
1LdU16(2)
2MoveLoc[0](Arg0: u16)
3Call max_byzantine(u16): u16
4Mul
5Sub
6Ret
}
source_symbols_secondary(Arg0: u16): u16 {
B0:
0CopyLoc[0](Arg0: u16)
1MoveLoc[0](Arg0: u16)
2Call max_byzantine(u16): u16
3Sub
4Ret
}
n_source_symbols(Arg0: u16): u64 {
B0:
0CopyLoc[0](Arg0: u16)
1Call source_symbols_primary(u16): u16
2CastU64
3MoveLoc[0](Arg0: u16)
4Call source_symbols_secondary(u16): u16
5CastU64
6Mul
7Ret
}
symbol_size(Arg0: u64, Arg1: u16): u16 {
L2: loc0: u64
L3: loc1: u16
B0:
0CopyLoc[0](Arg0: u64)
1LdU64(0)
2Eq
3BrFalse(6)
B1:
4LdU64(1)
5StLoc[0](Arg0: u64)
B2:
6MoveLoc[1](Arg1: u16)
7Call n_source_symbols(u16): u64
8StLoc[2](loc0: u64)
9MoveLoc[0](Arg0: u64)
10LdU64(1)
11Sub
12MoveLoc[2](loc0: u64)
13Div
14LdU64(1)
15Add
16CastU16
17StLoc[3](loc1: u16)
18CopyLoc[3](loc1: u16)
19LdU16(2)
20Mod
21LdU16(1)
22Eq
23BrFalse(28)
B3:
24MoveLoc[3](loc1: u16)
25LdU16(1)
26Add
27StLoc[3](loc1: u16)
B4:
28MoveLoc[3](loc1: u16)
29Ret
}
metadata_size(Arg0: u16): u64 {
B0:
0MoveLoc[0](Arg0: u16)
1CastU64
2LdConst[0](u64: 32)
3Mul
4LdU64(2)
5Mul
6LdConst[0](u64: 32)
7Add
8Ret
}
max_byzantine(Arg0: u16): u16 {
B0:
0MoveLoc[0](Arg0: u16)
1LdU16(1)
2Sub
3LdU16(3)
4Div
5Ret
}
Constants [
0 => u64: 32
]
}