Considere o seguinte código:
void f1(bool ok) {
if (ok) [[likely]] {
// ...
} else [[unlikely]] {
// ...
}
}
void f2(bool ok) {
if (ok) [[likely]] {
// ...
} else {
// ...
}
}
void f3(bool ok) {
if (ok) {
// ...
} else [[unlikely]] {
// ...
}
}
f1
,f2
, e sãof3
equivalentes do ponto de vista do compilador?