Subversion Repositories HelenOS-historic

Rev

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

Rev 268 Rev 281
Line 108... Line 108...
108
 
108
 
109
 
109
 
110
void nm_fault(__u8 n, __native stack[])
110
void nm_fault(__u8 n, __native stack[])
111
{
111
{
112
    reset_TS_flag();
112
    reset_TS_flag();
113
    if ((CPU->fpu_owner)!=NULL) {  
113
    if (CPU->fpu_owner != NULL) {  
114
        fpu_lazy_context_save(&((CPU->fpu_owner)->saved_fpu_context));
114
        fpu_lazy_context_save(&((CPU->fpu_owner)->saved_fpu_context));
115
        (CPU->fpu_owner)->fpu_context_engaged=0; /* don't prevent migration */
115
        CPU->fpu_owner->fpu_context_engaged=0; /* don't prevent migration */
-
 
116
    }
-
 
117
    if (THREAD->fpu_context_exists)
-
 
118
        fpu_lazy_context_restore(&(THREAD->saved_fpu_context));
-
 
119
    else {
-
 
120
        fpu_init();
-
 
121
        THREAD->fpu_context_exists=1;
116
    }
122
    }
117
    if(THREAD->fpu_context_exists) fpu_lazy_context_restore(&(THREAD->saved_fpu_context));
-
 
118
    else {fpu_init();THREAD->fpu_context_exists=1;}
-
 
119
    CPU->fpu_owner=THREAD;
123
    CPU->fpu_owner=THREAD;
120
}
124
}
121
 
125
 
122
 
126
 
123
 
127