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