mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 19:26:32 +00:00
[NTOS]
Enable fx save restore support earlier and uncomment it in trap handlers. svn path=/branches/ros-amd64-bringup/; revision=45083
This commit is contained in:
@@ -277,9 +277,6 @@ KiInitializeCpuFeatures()
|
||||
/* Disable fpu monitoring */
|
||||
__writecr0(__readcr0() & ~CR0_MP);
|
||||
|
||||
/* Enable fx save restore support */
|
||||
__writecr4(__readcr4() | CR4_FXSR);
|
||||
|
||||
}
|
||||
|
||||
VOID
|
||||
|
||||
@@ -679,6 +679,9 @@ KiSystemStartupReal(IN PLOADER_PARAMETER_BLOCK LoaderBlock)
|
||||
/* LDT is unused */
|
||||
// __lldt(0);
|
||||
|
||||
/* Enable fx save restore support */
|
||||
__writecr4(__readcr4() | CR4_FXSR);
|
||||
|
||||
/* Align stack to 16 bytes */
|
||||
LoaderBlock->KernelStack &= ~(16 - 1);
|
||||
|
||||
|
||||
@@ -117,12 +117,12 @@ _MsgTrapInfo:
|
||||
|
||||
.if (TRAPFLAGS & TRAPFLAG_XMM)
|
||||
/* Save xmm registers */
|
||||
// movdqa [rbp + KTRAP_FRAME_Xmm0], xmm0
|
||||
// movdqa [rbp + KTRAP_FRAME_Xmm1], xmm1
|
||||
// movdqa [rbp + KTRAP_FRAME_Xmm2], xmm2
|
||||
// movdqa [rbp + KTRAP_FRAME_Xmm3], xmm3
|
||||
// movdqa [rbp + KTRAP_FRAME_Xmm4], xmm4
|
||||
// movdqa [rbp + KTRAP_FRAME_Xmm5], xmm5
|
||||
movdqa [rbp + KTRAP_FRAME_Xmm0], xmm0
|
||||
movdqa [rbp + KTRAP_FRAME_Xmm1], xmm1
|
||||
movdqa [rbp + KTRAP_FRAME_Xmm2], xmm2
|
||||
movdqa [rbp + KTRAP_FRAME_Xmm3], xmm3
|
||||
movdqa [rbp + KTRAP_FRAME_Xmm4], xmm4
|
||||
movdqa [rbp + KTRAP_FRAME_Xmm5], xmm5
|
||||
.endif
|
||||
|
||||
.if (TRAPFLAGS & TRAPFLAG_SEGMENTS)
|
||||
@@ -221,12 +221,12 @@ _MsgTrapInfo:
|
||||
|
||||
.if (TRAPFLAGS & TRAPFLAG_XMM)
|
||||
/* Restore xmm registers */
|
||||
// movdqa xmm0, [rbp + KTRAP_FRAME_Xmm0]
|
||||
// movdqa xmm1, [rbp + KTRAP_FRAME_Xmm1]
|
||||
// movdqa xmm2, [rbp + KTRAP_FRAME_Xmm2]
|
||||
// movdqa xmm3, [rbp + KTRAP_FRAME_Xmm3]
|
||||
// movdqa xmm4, [rbp + KTRAP_FRAME_Xmm4]
|
||||
// movdqa xmm5, [rbp + KTRAP_FRAME_Xmm5]
|
||||
movdqa xmm0, [rbp + KTRAP_FRAME_Xmm0]
|
||||
movdqa xmm1, [rbp + KTRAP_FRAME_Xmm1]
|
||||
movdqa xmm2, [rbp + KTRAP_FRAME_Xmm2]
|
||||
movdqa xmm3, [rbp + KTRAP_FRAME_Xmm3]
|
||||
movdqa xmm4, [rbp + KTRAP_FRAME_Xmm4]
|
||||
movdqa xmm5, [rbp + KTRAP_FRAME_Xmm5]
|
||||
.endif
|
||||
|
||||
/* Restore rbp */
|
||||
|
||||
Reference in New Issue
Block a user