summaryrefslogtreecommitdiff
path: root/sys/src/ape/lib/ap/alpha/getfcr.s
blob: e3c9f02d89a1b038f2c6c944b5a1cfaeb969b8c4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
TEXT	getfsr(SB), $8
	TRAPB
	MOVT	FPCR, F0
	TRAPB
	MOVT	F0, tmp-8(SP)
	MOVL	tmp-4(SP), R0
	RET

TEXT	setfsr(SB), $8
	SLLQ		$32, R0
	MOVQ	R0, tmp-8(SP)
	MOVT	tmp-8(SP), F0
	TRAPB
	MOVT	F0, FPCR
	TRAPB
	RET

TEXT	getfcr(SB), $8
	TRAPB
	MOVT	FPCR, F0
	TRAPB
	MOVT	F0, tmp-8(SP)
	MOVL	tmp-4(SP), R0
	RET

TEXT	setfcr(SB), $8
	SLLQ		$32, R0
	MOVQ	R0, tmp-8(SP)
	MOVT	tmp-8(SP), F0
	TRAPB
	MOVT	F0, FPCR
	TRAPB
	RET