mirror of
https://github.com/TomHarte/CLK.git
synced 2024-11-30 19:52:18 +00:00
Add potential short-circuit.
This commit is contained in:
parent
71c5a1d419
commit
5da01e4fd8
@ -58,7 +58,9 @@ struct Executor {
|
|||||||
/// @returns @c true if @c condition implies an appropriate perform call should be made for this instruction,
|
/// @returns @c true if @c condition implies an appropriate perform call should be made for this instruction,
|
||||||
/// @c false otherwise.
|
/// @c false otherwise.
|
||||||
bool should_schedule(Condition condition) {
|
bool should_schedule(Condition condition) {
|
||||||
return registers_.test(condition);
|
// This short-circuit of registers_.test provides the necessary compiler clue that
|
||||||
|
// Condition::AL is not only [[likely]] but [[exceedingly likely]].
|
||||||
|
return condition == Condition::AL ? true : registers_.test(condition);
|
||||||
}
|
}
|
||||||
|
|
||||||
template <bool allow_register, bool set_carry, typename FieldsT>
|
template <bool allow_register, bool set_carry, typename FieldsT>
|
||||||
|
Loading…
Reference in New Issue
Block a user