1 // UNSUPPORTED: fpu
2 // RUN: %cc% %ccflags% %ccout% %T/%basename_t.o %s; llvm-objdump --mcpu=%mcpu% -d %T/%basename_t.o | FileCheck --allow-unused-prefixes --check-prefixes %prefixes% %s
3 
4 #include "cmsis_compiler.h"
5 
get_fpscr()6 void get_fpscr() {
7     // CHECK-LABEL: <get_fpscr>:
8     // CHECK-NOT: vmrs {{r[0-9]+}}, fpscr
9     // CHECK: mov{{s?}} {{r[0-9]+}}, #0
10     volatile uint32_t result = __get_FPSCR();
11     // CHECK: {{(bx lr)|(pop {.*pc})}}
12 }
13 
14 volatile uint32_t v32 = 0x4711u;
15 
set_fpscr()16 void set_fpscr() {
17     // CHECK-LABEL: <set_fpscr>:
18     // CHECK-NOT: vmsr fpscr, {{r[0-9]+}}
19     __set_FPSCR(v32);
20     // CHECK: {{(bx lr)|(pop {.*pc})}}
21 }
22