diff options
| author | Yi Kong <Yi.Kong@arm.com> | 2014-08-13 19:18:14 +0000 |
|---|---|---|
| committer | Yi Kong <Yi.Kong@arm.com> | 2014-08-13 19:18:14 +0000 |
| commit | 26d104a9ec2470ed0b35171e36ad4522f88837e1 (patch) | |
| tree | 813e73842515f6300d6070c32f1ae964ebe638e8 /clang/test | |
| parent | bb415eac2e79cc9c6d761cdb427693d8936b4a62 (diff) | |
| download | bcm5719-llvm-26d104a9ec2470ed0b35171e36ad4522f88837e1.tar.gz bcm5719-llvm-26d104a9ec2470ed0b35171e36ad4522f88837e1.zip | |
ARM: Prefetch intrinsics
llvm-svn: 215568
Diffstat (limited to 'clang/test')
| -rw-r--r-- | clang/test/CodeGen/builtins-arm.c | 11 | ||||
| -rw-r--r-- | clang/test/Sema/builtins-arm.c | 5 |
2 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/CodeGen/builtins-arm.c b/clang/test/CodeGen/builtins-arm.c index a51df15ce56..686ae4e0093 100644 --- a/clang/test/CodeGen/builtins-arm.c +++ b/clang/test/CodeGen/builtins-arm.c @@ -66,3 +66,14 @@ void test_barrier() { unsigned rbit(unsigned a) { return __builtin_arm_rbit(a); } + +void prefetch(int i) { + __builtin_arm_prefetch(&i, 0, 1); +// CHECK: call {{.*}} @llvm.prefetch(i8* %0, i32 0, i32 3, i32 1) + + __builtin_arm_prefetch(&i, 1, 1); +// CHECK: call {{.*}} @llvm.prefetch(i8* %0, i32 1, i32 3, i32 1) + + __builtin_arm_prefetch(&i, 1, 0); +// CHECK: call {{.*}} @llvm.prefetch(i8* %0, i32 1, i32 3, i32 0) +} diff --git a/clang/test/Sema/builtins-arm.c b/clang/test/Sema/builtins-arm.c index 6c367d35a5f..cc4af7d11df 100644 --- a/clang/test/Sema/builtins-arm.c +++ b/clang/test/Sema/builtins-arm.c @@ -37,4 +37,9 @@ void test3() { __builtin_arm_isb(18); // expected-error {{argument should be a value from 0 to 15}} } +void test4() { + __builtin_arm_prefetch(0, 2, 0); // expected-error {{argument should be a value from 0 to 1}} + __builtin_arm_prefetch(0, 0, 2); // expected-error {{argument should be a value from 0 to 1}} +} + #endif |

