hex.xor_byte_from_ptrΒΆ
Effectively: dst[:2] ^= *ptr
dst is a hex[2:]. ptr is a hex[:w/4] that holds an address, which we assume is dw-aligned.
SignatureΒΆ
def xor_byte_from_ptr dst, ptr < hex.pointers.read_byte { ... }
Defined in hex/pointers/xor_from_pointer.fj β lines 16β20 (view on GitHub).
ComplexityΒΆ
Time:
w(0.75@+ 5) + 7@+13Space:
w(0.75@+29) + 7@+48
See the complexity glossary for what @, w, dw, dbit, n mean.
SourceΒΆ
Click to view the macro body
def xor_byte_from_ptr dst, ptr < hex.pointers.read_byte {
.pointers.set_flip_and_jump_pointers ptr
.pointers.read_byte_from_inners_ptrs
.xor 2, dst, hex.pointers.read_byte
}
Depends onΒΆ
Used byΒΆ
Example usesΒΆ
hex.read_byteinhex/pointers/read_pointers.fj
β Previous: hex.xor_hex_from_ptr
Next: hex.pointers.read_byte_from_inners_ptrs β