hex.pointers.xor_hex_to_flip_ptr (arity 2)¶
xors (the parameter hex, shifted left by bit_shift) to the hex/byte pointed by the memory-word hex.pointers.to_flip.
use after: .pointers.set_flip_pointer ptr
does: .xor *ptr, hex<<bit_shift (as it uses the address in to_flip)
It assumes that the value in the memory-word to_flip is a dw-aligned address to an hex-variable.
bit_shift is a constant that’s assumed to be divisible by 4.
Signature¶
def xor_hex_to_flip_ptr hex, bit_shift @ prepare_flip_bit0, prepare_flip_bit1, prepare_flip_bit2, prepare_flip_bit3, after_flip_bit0, after_flip_bit1, after_flip_bit2, after_flip_bit3, cleanup < hex.pointers.to_flip { ... }
Defined in hex/pointers/xor_to_pointer.fj — lines 117–146 (view on GitHub).
Complexity¶
Time:
5@+12Space:
5@+76
See the complexity glossary for what @, w, dw, dbit, n mean.