Subversion Repositories HelenOS

Rev

Rev 1880 | Rev 2071 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1880 Rev 1882
Line 225... Line 225...
225
	b _memsetb
225
	b _memsetb
226
	nop
226
	nop
227
 
227
 
228
 
228
 
229
.macro WRITE_ALTERNATE_REGISTER reg, bit
229
.macro WRITE_ALTERNATE_REGISTER reg, bit
-
 
230
	rdpr %pstate, %g1				! save PSTATE.PEF
230
	wrpr %g0, (\bit | PSTATE_PRIV_BIT), %pstate
231
	wrpr %g0, (\bit | PSTATE_PRIV_BIT), %pstate
231
	mov %o0, \reg
232
	mov %o0, \reg
232
	retl
-
 
233
	wrpr %g0, PSTATE_PRIV_BIT, %pstate
233
	wrpr %g0, PSTATE_PRIV_BIT, %pstate
-
 
234
	retl
-
 
235
	wrpr %g1, 0, %pstate				! restore PSTATE.PEF
234
.endm
236
.endm
235
 
237
 
236
.macro READ_ALTERNATE_REGISTER reg, bit
238
.macro READ_ALTERNATE_REGISTER reg, bit
-
 
239
	rdpr %pstate, %g1				! save PSTATE.PEF
237
	wrpr %g0, (\bit | PSTATE_PRIV_BIT), %pstate
240
	wrpr %g0, (\bit | PSTATE_PRIV_BIT), %pstate
238
	mov \reg, %o0
241
	mov \reg, %o0
239
	retl
-
 
240
	wrpr %g0, PSTATE_PRIV_BIT, %pstate
242
	wrpr %g0, PSTATE_PRIV_BIT, %pstate
-
 
243
	retl
-
 
244
	wrpr %g1, 0, %pstate				! restore PSTATE.PEF
241
.endm
245
.endm
242
 
246
 
243
.global write_to_ag_g6
247
.global write_to_ag_g6
244
write_to_ag_g6:
248
write_to_ag_g6:
245
	WRITE_ALTERNATE_REGISTER %g6, PSTATE_AG_BIT
249
	WRITE_ALTERNATE_REGISTER %g6, PSTATE_AG_BIT