4.7.4. __builtin_expect

此内在函数为编译器提供跳转预测信息。 调用 __builtin_expect(expr, , c) 可通知编译器预计 expr == c

Note

此内置函数是 ARM 编译器支持的 GNU 编译器扩展。

语法


long __builtin_expect(long int expr, long int c)

其中:

expr

是一个整数表达式

c

是一个编译时常数。

返回值

__builtin_expect 返回 expr 的值。

示例


if (__builtin_expect(i, 0))

{

    foo();                   // we do not expect foo to be called,

}                            // because we expect i to be zero

Copyright © 2007 ARM Limited. All rights reserved. ARM DUI 0348AC
Non-Confidential