Search by name, SuiNS, address, digest, object ID, coin type or checkpoint.

Move path
0xfdc8…ea77::redstuff
Functions
70 public, 0 entry
Structs
0
Friend modules
encoding
redstuff

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
]
}