3 ms·
Not really: 1) Doesn't obfuscate 2) Comparisons operators compile very similarly to a conditional statement (e.g: if, ternary operator, etc) https://godbolt.
by partycoder 9y ago
Not really:
1) Doesn't obfuscate
2) Comparisons operators compile very similarly to a conditional statement (e.g: if, ternary operator, etc)
https://godbolt.org/g/xXecW2 https://godbolt.org/g/xXecW2
I rewrote the OP code using ifs, and it compiles to exactly the same instructions. You can then add -O3 -msse -msse2 as compiler flags, code will be optimized about the same way.
- monocasa 9y agoYes really. movfuscator doesn't really obfuscate all that much, other than just being weird. It's whole shitck is to compute offsets into it's memory space differently based on the input data, but not change the instruction stream based on the data. That way computations that shouldn't contribute to the final result are simply given a scratch offset that isn't read back, but the instruction stream never deviates. This SIMD code is also ultimately computing different offsets into memory space (contributing 0 to that lane's offset on each iteration if that SIMD lane has already found the node it's looking for), but keeping the instruction stream consistent across the 'separate' lanes.