xref: /inferno-os/lib9/setfcr-MacOSX-power.c (revision c687673164b5d1db97cf7b0179842f4526f5fbf5)
1 /*
2  * MacOSX/Darwin ppc fpu support
3  * Mimic Plan9 floating point support
4  */
5 
6 #include "lib9.h"
7 #include <architecture/ppc/fp_regs.h>
8 
9 ulong
10 getfcr(void)
11 {
12 	ppc_fp_scr_t fpscr = get_fp_scr();
13 	return ((ulong*)&fpscr)[1];
14 }
15 
16 ulong
17 getfsr(void)
18 {
19 	ppc_fp_scr_t fpscr = get_fp_scr();
20 	return ((ulong*)&fpscr)[1];
21 }
22 
23 void
24 setfsr(ulong fsr)
25 {
26 	ppc_fp_scr_t fpscr = get_fp_scr();
27 	(((ulong*)&fpscr)[1]) = fsr;
28 	set_fp_scr(fpscr);
29 }
30 
31 void
32 setfcr(ulong fcr)
33 {
34 	ppc_fp_scr_t fpscr = get_fp_scr();
35 	(((ulong*)&fpscr)[1]) = fcr;
36 	set_fp_scr(fpscr);
37 }
38