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@+12

  • Space: 5@+76

See the complexity glossary for what @, w, dw, dbit, n mean.

Depends on¶

Used by¶