我希望在 iOS 应用程序中进行高精度计时。在 Intel x86 芯片上,我会使用 RDTSC 来获取时间戳,但我无法在 ARM 设备上执行此操作。是否有可以从 iOS 应用程序使用的 RDTSC 的等效项?
最佳答案
似乎有一个用于此目的的 clang 内置函数,__builtin_readcyclecounter()
。在 x86 上,它编译为 rdtsc;在 ARM64 上,它编译为 mrs x0, PMCCNTR_EL0
。但在 ARM 上它总是返回 0。不过 ARM64 对我来说已经足够好了,因为 iOS 11 中放弃了 32 位支持。
关于ios - iOS 的 RDTSC 等效项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44349757/