1 /*
2  * Copyright (c) 2008-2012 Travis Geiselbrecht
3  *
4  * Use of this source code is governed by a MIT-style
5  * license that can be found in the LICENSE file or at
6  * https://opensource.org/licenses/MIT
7  */
8 #ifndef __ARM_M_ARCH_THREAD_H
9 #define __ARM_M_ARCH_THREAD_H
10 
11 #include <stdbool.h>
12 #include <sys/types.h>
13 
14 struct arch_thread {
15     vaddr_t sp;
16     bool was_preempted;
17 
18 #if ARM_WITH_VFP
19     /* has this thread ever used the floating point state? */
20     bool fpused;
21 
22     /* s16-s31 saved here. s0-s15, fpscr saved on exception frame */
23     float fpregs[16];
24 #endif
25 };
26 
27 #endif
28 
29