| 79 | } |
| 80 | |
| 81 | static inline __device__ uint recursion(const uint *const recursion_table, |
| 82 | const uint mask, const uint sh1, |
| 83 | const uint sh2, const uint x1, |
| 84 | const uint x2, uint y) { |
| 85 | uint x = (x1 & mask) ^ x2; |
| 86 | x ^= x << sh1; |
| 87 | y = x ^ (y >> sh2); |
| 88 | uint mat = recursion_table[y & 0x0f]; |
| 89 | return y ^ mat; |
| 90 | } |
| 91 | |
| 92 | static inline __device__ uint temper(const uint *const temper_table, |
| 93 | const uint v, uint t) { |
no outgoing calls
no test coverage detected