ZHCUAV8W january 1998 – march 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
支持以下內(nèi)置函數(shù):
__builtin_frame_address() 函數(shù)始終返回 0,除非參數(shù)是常數(shù)零。
僅當(dāng)啟用了硬件浮點(diǎn)支持時(shí),才支持 __builtin_sqrt() 和 __builtin_sqrtf() 函數(shù)。此外,如果 --float_support 設(shè)置為 fpv4spd16,則不支持 __builtin_sqrt() 函數(shù)。
調(diào)用運(yùn)行時(shí)可能不可用的內(nèi)置函數(shù)時(shí),請(qǐng)使用以下示例中所示的 Clang __has_builtin 宏命令,以確保該函數(shù)受支持:
#if __has_builtin(__builtin_sqrt)
double estimate = __builtin_sqrt(x);
#else
double estimate = fast_approximate_sqrt(x);
#endif如果支持內(nèi)置函數(shù),且設(shè)備具有適當(dāng)?shù)挠布С郑瑒t內(nèi)置函數(shù)將調(diào)用硬件支持。
如果支持內(nèi)置函數(shù),但設(shè)備未啟用相應(yīng)的硬件,則內(nèi)置函數(shù)通常會(huì)成為對(duì) RTS 庫(kù)函數(shù)的調(diào)用。例如,__builtin_sqrt() 將成為對(duì)庫(kù)函數(shù) sqrt() 的調(diào)用。
__builtin_return_address() 函數(shù)始終返回零。