> branches are usually superior to conditional moves for predictable conditions as they break dependency chains.
Interesting, not heard that before. Do you know of somewhere I can read about this?
Interesting, not heard that before. Do you know of somewhere I can read about this?
Gcc absolutely won't generate two cmov instructions in a basic block. Clang, for its part, abandons practically all optimization of loops that could conceivably generate a throw.