blob: f8c7f730a9a3191993f6e7cf5ec6af01f3503356 [file] [log] [blame]
Jim Grosbachf7947052012-07-09 18:34:21 +00001// REQUIRES: arm-registered-target
Rafael Espindolaa71d3c62010-06-08 03:59:28 +00002// RUN: %clang_cc1 -Wall -Werror -triple thumbv7-eabi -target-cpu cortex-a8 -O3 -emit-llvm -o - %s | FileCheck %s
Chris Lattner2752c012010-03-03 19:03:45 +00003
Chris Lattner2752c012010-03-03 19:03:45 +00004void *f0()
5{
6 return __builtin_thread_pointer();
7}
Rafael Espindolaa71d3c62010-06-08 03:59:28 +00008
9void f1(char *a, char *b) {
10 __clear_cache(a,b);
11}
12
Daniel Dunbar10582532010-07-16 00:31:23 +000013// CHECK: call {{.*}} @__clear_cache
Logan Chiena8f7a972013-02-23 04:24:36 +000014
15void test_eh_return_data_regno()
16{
17 volatile int res;
18 res = __builtin_eh_return_data_regno(0); // CHECK: store volatile i32 0
19 res = __builtin_eh_return_data_regno(1); // CHECK: store volatile i32 1
20}
Joey Gouly594e1932013-10-02 10:00:18 +000021
22void sevl() {
23 __builtin_arm_sevl();
24}
25
26// CHECK: call {{.*}} @llvm.arm.sevl