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

API

math

Module0x9911…a9ec
Move path
0x859e…b7cb::math
Functions
33 public, 0 entry
Structs
0
Friend modules
None
math

Bytecode100 lines

The on-chain disassembly. Offsets are bytecode positions within each function.

// Move bytecode v6
module 859eb18bd5b5e8cc32deb6dfb1c39941008ab3c6e27f0b8ce2364be7102bb7cb.math {
 
public mul(Arg0: u64, Arg1: u64): u64 {
L2: loc0: u128
L3: loc1: u128
B0:
0MoveLoc[0](Arg0: u64)
1CastU128
2StLoc[2](loc0: u128)
3MoveLoc[1](Arg1: u64)
4CastU128
5StLoc[3](loc1: u128)
6MoveLoc[2](loc0: u128)
7MoveLoc[3](loc1: u128)
8Mul
9LdConst[1](u128: 1000..)
10Div
11CastU64
12Ret
}
 
public mul_round(Arg0: u64, Arg1: u64): bool * u64 {
L2: loc0: bool
L3: loc1: u128
L4: loc2: u128
B0:
0MoveLoc[0](Arg0: u64)
1CastU128
2StLoc[3](loc1: u128)
3MoveLoc[1](Arg1: u64)
4CastU128
5StLoc[4](loc2: u128)
6LdTrue
7StLoc[2](loc0: bool)
8CopyLoc[3](loc1: u128)
9CopyLoc[4](loc2: u128)
10Mul
11LdConst[1](u128: 1000..)
12Mod
13LdU128(0)
14Eq
15BrFalse(18)
B1:
16LdFalse
17StLoc[2](loc0: bool)
B2:
18MoveLoc[2](loc0: bool)
19MoveLoc[3](loc1: u128)
20MoveLoc[4](loc2: u128)
21Mul
22LdConst[1](u128: 1000..)
23Div
24CastU64
25Ret
}
 
public div_round(Arg0: u64, Arg1: u64): bool * u64 {
L2: loc0: bool
L3: loc1: u128
L4: loc2: u128
B0:
0MoveLoc[0](Arg0: u64)
1CastU128
2StLoc[3](loc1: u128)
3MoveLoc[1](Arg1: u64)
4CastU128
5StLoc[4](loc2: u128)
6LdTrue
7StLoc[2](loc0: bool)
8CopyLoc[3](loc1: u128)
9LdConst[0](u64: 1000..)
10CastU128
11Mul
12CopyLoc[4](loc2: u128)
13Mod
14LdU128(0)
15Eq
16BrFalse(19)
B1:
17LdFalse
18StLoc[2](loc0: bool)
B2:
19MoveLoc[2](loc0: bool)
20MoveLoc[3](loc1: u128)
21LdConst[0](u64: 1000..)
22CastU128
23Mul
24MoveLoc[4](loc2: u128)
25Div
26CastU64
27Ret
}
 
Constants [
0 => u64: 1000000000
1 => u128: 1000000000
]
}