xor.go 340 B

1234567891011121314151617
  1. // +build !amd64
  2. package kcp
  3. // xorfwd performs XOR forwards in words, x[i] ^= x[i-4], i from 0 to len
  4. func xorfwd(x []byte) {
  5. for i := 4; i < len(x); i++ {
  6. x[i] ^= x[i-4]
  7. }
  8. }
  9. // xorbkd performs XOR backwords in words, x[i] ^= x[i-4], i from len to 0
  10. func xorbkd(x []byte) {
  11. for i := len(x) - 1; i >= 4; i-- {
  12. x[i] ^= x[i-4]
  13. }
  14. }