|
|
|
|
|
by yarg
1144 days ago
|
|
My point was, anywhere there's a hidden 'if' can be branching. If there's no calculation being done, it'll simplify. value = (test) ? const0 : const1;
But if calculations are being done, it won't. value = (test) ? calc0() : calc1();
If you want non-branching where the ternary options are calculated, you need to calculate both.This matters most with SIMD operations. Look at section 2.5.1 (Branch-Equivalent SIMD Processing) http://ftp.cvut.cz/kernel/people/geoff/cell/ps3-linux-docs/C... |
|