bit.print_dec_uint.div10_stepΒΆ
One step inside bit.print_dec_uint: divides src by 10, stashes the remainder as an ASCII digit, and trips char_flag to make this digit printable.
SignatureΒΆ
def div10_step div10, xor, ret_reg, src, ascii_res, char_flag, zero_flag, start_printing { ... }
Defined in bit/output.fj β lines 202β209 (view on GitHub).
ComplexityΒΆ
Time:
n(7@+12)Space:
11@-3
See the complexity glossary for what @, w, dw, dbit, n mean.
SourceΒΆ
Click to view the macro body
def div10_step div10, xor, ret_reg, src, ascii_res, char_flag, zero_flag, start_printing {
..if1 zero_flag, start_printing
stl.fcall div10, ret_reg
..zero 4, ascii_res
rep(4, i) ..double_exact_xor ascii_res+dbit+i*dw, src+dbit+i*dw, src+i*dw
..not char_flag
stl.fcall xor, ret_reg
}
Depends onΒΆ
β Previous: bit.print_dec_uint
Next: bit.print_dec_uint.print_char β