
GCC 4.8+ has a PowerPC-specific intrinsic, __builtin_ppc_get_timebase, to do what Clang's __builtin_readcyclecounter does. For compatibility with code that uses GCC's spelling (including glibc), support it as well. Partially fixes PR23681. llvm-svn: 246510
17 lines
523 B
C
17 lines
523 B
C
// REQUIRES: powerpc-registered-target
|
|
// RUN: %clang_cc1 -triple powerpc-unknown-unknown -emit-llvm %s -o - | FileCheck %s
|
|
|
|
void test_eh_return_data_regno()
|
|
{
|
|
volatile int res;
|
|
res = __builtin_eh_return_data_regno(0); // CHECK: store volatile i32 3
|
|
res = __builtin_eh_return_data_regno(1); // CHECK: store volatile i32 4
|
|
}
|
|
|
|
// CHECK-LABEL: define i64 @test_builtin_ppc_get_timebase
|
|
long long test_builtin_ppc_get_timebase() {
|
|
// CHECK: call i64 @llvm.readcyclecounter()
|
|
return __builtin_ppc_get_timebase();
|
|
}
|
|
|