full_math_u32
Module0x8006…00bb
- Move path
- 0x91bf…9ca1::full_math_u32
- Functions
- 66 public, 0 entry
- Structs
- 0
- Friend modules
- None
full_math_u32
- fee4
- fee10000bps1
- fee100bps1
- fee3000bps1
- fee500bps1
- full_math_u1286
- full_math_u326
- full_math_u646
- i12831
- i3230
- i6428
- math_bit2
- math_liquidity7
- math_sqrt_price8
- math_swap3
- math_tick7
- math_u12817
- math_u2565
- math_u647
- pool87
- pool_factory21
- pool_fetcher1
- position_manager34
- position_nft5
- reward_manager8
- string_tools5
- swap_router13
Bytecode83 lines
The on-chain disassembly. Offsets are bytecode positions within each function.
// Move bytecode v6
module 91bfbc386a41afcfd9b2533058d7e915a1d3829089cc268ff4333d54d6339ca1.full_math_u32 {
public mul_div_floor(Arg0: u32, Arg1: u32, Arg2: u32): u32 {
B0:
0MoveLoc[0](Arg0: u32)
1MoveLoc[1](Arg1: u32)
2Call full_mul(u32, u32): u64
3MoveLoc[2](Arg2: u32)
4CastU64
5Div
6CastU32
7Ret
}
public mul_div_round(Arg0: u32, Arg1: u32, Arg2: u32): u32 {
B0:
0MoveLoc[0](Arg0: u32)
1MoveLoc[1](Arg1: u32)
2Call full_mul(u32, u32): u64
3CopyLoc[2](Arg2: u32)
4CastU64
5LdU8(1)
6Shr
7Add
8MoveLoc[2](Arg2: u32)
9CastU64
10Div
11CastU32
12Ret
}
public mul_div_ceil(Arg0: u32, Arg1: u32, Arg2: u32): u32 {
B0:
0MoveLoc[0](Arg0: u32)
1MoveLoc[1](Arg1: u32)
2Call full_mul(u32, u32): u64
3CopyLoc[2](Arg2: u32)
4CastU64
5LdU64(1)
6Sub
7Add
8MoveLoc[2](Arg2: u32)
9CastU64
10Div
11CastU32
12Ret
}
public mul_shr(Arg0: u32, Arg1: u32, Arg2: u8): u32 {
B0:
0MoveLoc[0](Arg0: u32)
1MoveLoc[1](Arg1: u32)
2Call full_mul(u32, u32): u64
3MoveLoc[2](Arg2: u8)
4Shr
5CastU32
6Ret
}
public mul_shl(Arg0: u32, Arg1: u32, Arg2: u8): u32 {
B0:
0MoveLoc[0](Arg0: u32)
1MoveLoc[1](Arg1: u32)
2Call full_mul(u32, u32): u64
3MoveLoc[2](Arg2: u8)
4Shl
5CastU32
6Ret
}
public full_mul(Arg0: u32, Arg1: u32): u64 {
B0:
0MoveLoc[0](Arg0: u32)
1CastU64
2MoveLoc[1](Arg1: u32)
3CastU64
4Mul
5Ret
}
}