Added exregs_set_mr() function

Moved all exregs-related calls to libl4 since these are part of the L4 api.
This commit is contained in:
Bahadir Balban
2008-09-15 17:57:09 +03:00
parent b7d1e46138
commit 9c2c9676e8
7 changed files with 73 additions and 46 deletions
-27
View File
@@ -1,27 +0,0 @@
/*
* Generic to arch-specific interface for
* exchange_registers()
*
* Copyright (C) 2008 Bahadir Balban
*/
#include <exregs.h>
void exregs_set_pager(struct exregs_data *s, l4id_t pagerid)
{
s->pagerid = pagerid;
s->flags |= EXREGS_SET_PAGER;
}
void exregs_set_stack(struct exregs_data *s, unsigned long sp)
{
s->context.sp = sp;
s->valid_vect |= 1 << (offsetof(task_context_t, sp) >> 2);
}
void exregs_set_pc(struct exregs_data *s, unsigned long pc)
{
s->context.pc = pc;
s->valid_vect |= 1 << (offsetof(task_context_t, pc) >> 2);
}