likely/unlikely macros

Tags:

Kernel : likely/unlikely macros

trax씨 홈에서 봤는데.. 별게 다있네요…
내용은 x가 됨직하면 likely 라고 쓰는것입니다.

예를들어 if (likely(x)) { … } else { …} 라는 코드에서
우리가 likely 라고 하였으므로 assembly 코드가 나올 때,
if-then 파트 쪽으로는 그냥 가도록 만들어주고
else 쪽으로 가려면 branch 하게 코드를 만들어줍니다.
반면 unlikely 라는 매크로는 then 쪽으로는 branch, else쪽으로는
branch없는 수행을 하게 해줍니다.

이런식으로 속도 향상을 본다는 아이디어입니다.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *